71 lines
2.1 KiB
Python
71 lines
2.1 KiB
Python
"""
|
|
探路脚本 — 调 MiniMax embo-01,打印原始返回 JSON
|
|
确认向量字段位置和维度后再写正式 service。
|
|
"""
|
|
|
|
import httpx
|
|
import json
|
|
import os
|
|
from pathlib import Path
|
|
|
|
# 加载 .env
|
|
from dotenv import load_dotenv
|
|
_env_path = Path(__file__).parent.parent / ".env"
|
|
load_dotenv(str(_env_path))
|
|
|
|
api_key = os.environ.get("MINIMAX_EMBED_API_KEY", "")
|
|
group_id = os.environ.get("MINIMAX_GROUP_ID", "")
|
|
|
|
if not api_key or api_key == "your_api_key_here":
|
|
print("[ERROR] MINIMAX_EMBED_API_KEY not configured, please edit backend/.env")
|
|
exit(1)
|
|
if not group_id or group_id == "your_group_id_here":
|
|
print("[ERROR] MINIMAX_GROUP_ID not configured, please edit backend/.env")
|
|
exit(1)
|
|
|
|
print(f"API Key (first 4 chars): {api_key[:4]}...")
|
|
print(f"GroupId: {group_id}")
|
|
print()
|
|
|
|
# 最小调用
|
|
test_text = "这是一段测试文本,用于验证 embo-01 接口返回结构。"
|
|
|
|
print(f"Sending request, test text: {test_text}")
|
|
print("-" * 60)
|
|
|
|
try:
|
|
resp = httpx.post(
|
|
"https://api.minimax.chat/v1/embeddings",
|
|
headers={
|
|
"Authorization": f"Bearer {api_key}",
|
|
"GroupId": group_id,
|
|
"Content-Type": "application/json",
|
|
},
|
|
json={"model": "embo-01", "texts": [test_text], "type": "db"},
|
|
timeout=30.0,
|
|
)
|
|
print(f"HTTP status: {resp.status_code}")
|
|
print()
|
|
data = resp.json()
|
|
print(json.dumps(data, indent=2, ensure_ascii=False))
|
|
|
|
# 提取向量,验证维度
|
|
print()
|
|
print("-" * 60)
|
|
vectors = data.get("vectors", [])
|
|
if vectors and len(vectors) > 0:
|
|
embedding = vectors[0]
|
|
dim = len(embedding)
|
|
print(f"[OK] Embedding field: vectors[0]")
|
|
print(f"[OK] Embedding dimension: {dim}")
|
|
if dim != 1536:
|
|
print(f"[STOP] Dimension is NOT 1536! Got {dim} - stopping here")
|
|
else:
|
|
print(f"[OK] Dimension correct: 1536")
|
|
print(f"[OK] API call successful, structure confirmed.")
|
|
else:
|
|
print("[WARNING] vectors not found in response")
|
|
|
|
except Exception as e:
|
|
print(f"[ERROR] Request failed: {e}")
|