#!/usr/bin/env python3 # -*- coding: utf-8 -*- """专题二 · 步骤 5:实跑 embedding,确认 1024 维向量。""" from __future__ import annotations import json import sys import _bootstrap # noqa: F401 import _config as C from dify_api import Dify def main() -> int: d = Dify(C.DIFY_EMAIL, C.DIFY_PASSWORD) try: body = json.dumps({"model": C.EMBED_MODEL, "input": "这是一个测试文本"}) out, err = d.sh( "curl -s -X POST '%s/v1/embeddings' -H 'Authorization: Bearer %s' " "-H 'Content-Type: application/json' -d '%s'" % (C.XF_URL, C.XF_KEY, body) ) print(out or err) try: data = json.loads(out) emb = data["data"][0]["embedding"] print("embedding dim:", len(emb)) if len(emb) != 1024: print("[WARN] 期望 1024 维") return 1 except Exception as e: print("[ERR] 解析失败:", e) return 1 return 0 finally: d.close() if __name__ == "__main__": sys.exit(main())