#!/usr/bin/env python3 # -*- coding: utf-8 -*- """专题二 · 步骤 6:Dify 控制台 API 添加 bge-m3 Embedding 凭据。""" from __future__ import annotations import sys import _bootstrap # noqa: F401 import _config as C from dify_api import Dify, pp def main() -> int: d = Dify(C.DIFY_EMAIL, C.DIFY_PASSWORD) try: d.login() body = { "model": C.EMBED_MODEL, "model_type": "embedding", "credentials": { "server_url": C.XF_URL, "model_uid": C.EMBED_MODEL, "api_key": C.XF_KEY, "invoke_timeout": "60", "max_retries": "3", }, "name": C.EMBED_MODEL, } path = "/workspaces/current/model-providers/%s/models/credentials" % C.XINFERENCE_PROVIDER r = d.post(path, body) pp("add embedding cred", r) if r.get("code") not in ("200", "201"): r = d.req("PUT", path, body=body) pp("put embedding cred", r) r2 = d.get("/workspaces/current/models/model-types/text-embedding") pp("embedding models", r2) return 0 if r.get("code") in ("200", "201") else 1 finally: d.close() if __name__ == "__main__": sys.exit(main())