用 Python 标准库完成第一次 HiKaRi API 调用
582 字
3 分钟
用 Python 标准库完成第一次 HiKaRi API 调用
下面用 Python 3 标准库验证 OpenAI 兼容的 Chat Completions 接口。你需要一个有可用资金、绑定了相应分组的 HiKaRi Key,以及该分组支持的精确模型 ID。仅支持其他协议的模型不能直接套用这段请求体。
先在本机设置环境变量
Windows PowerShell:
$env:API_KEY = Read-Host '输入本站 API Key'$env:MODEL_ID = Read-Host '输入模型广场中的精确模型 ID'python first_call.pymacOS、Linux 或 Git Bash:
read -s -p 'API Key: ' API_KEY; echoexport API_KEYread -p '精确模型 ID: ' MODEL_IDexport MODEL_IDpython3 first_call.py示例中的交互输入用于本机验证。共享电脑或生产环境应使用自己的密钥管理方式;不要将 Key 写入 Git 仓库、前端代码或公开笔记。
保存为 first_call.py
import jsonimport osimport urllib.errorimport urllib.request
base = "https://hikariapi.xyz"key = os.environ["API_KEY"].strip()model = os.environ["MODEL_ID"].strip()
def request(path, payload=None): headers = {"Authorization": "Bearer " + key} data = None if payload is not None: headers["Content-Type"] = "application/json" data = json.dumps(payload).encode("utf-8") req = urllib.request.Request(base + path, data=data, headers=headers) with urllib.request.urlopen(req, timeout=120) as response: return json.load(response)
try: catalog = request("/v1/models") ids = [item["id"] for item in catalog["data"]] if model not in ids: raise SystemExit("模型不在此 Key 的目录中,请先核对分组与精确名称。") result = request("/v1/chat/completions", { "model": model, "messages": [{"role": "user", "content": "只回复 OK"}], "stream": False, }) print(result["choices"][0]["message"]["content"]) print("usage:", json.dumps(result.get("usage"), ensure_ascii=False))except urllib.error.HTTPError as error: print("HTTP 状态:", error.code) print("响应内容请在本机查看,分享前移除凭据和私人数据:") print(error.read().decode("utf-8", errors="replace")) raise SystemExit(1)except urllib.error.URLError as error: raise SystemExit("网络请求失败;检查本机 DNS、代理、网络,并核对用量后决定是否重发。") from error如何判断成功
先确认目录请求成功,再看生成结果和主站用量记录。输出未必严格等于 OK;自然语言遵循程度不是网络连通性的唯一判据。模型返回高级内容块或拒绝信息时,也要检查对应协议说明。
usage 是接口报告的用量,不应只用回答字数推测成本。完整账单还需核对实际分组、计费模型及倍率。
这段程序不自动重试生成请求:网络超时不证明服务端没有处理。排错见 HTTP 状态码,后续接入见 客户端检查清单。
参考:本站文字 API、Python urllib.request。代码依据协议编写;本文没有使用客户 Key 或发起付费模型调用。
文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!
用 Python 标准库完成第一次 HiKaRi API 调用
https://blog.hikaripublic.xyz/posts/python-first-api-call/相关文章智能推荐
1
从这里开始:HiKaRi API 接入与阅读路线图
接入教程第一次接入、排查报错、选择渠道或开展团队项目,从对应入口开始。先验证最小请求,再扩大使用。
2
Base URL、API Key 和模型名分别怎么填?
接入教程区分站点地址、协议路径、Key 权限和精确模型名,避免 /v1/v1 与客户端认证配置错误。
3
客户端接入检查清单:终端能用,为什么应用里不能用?
接入教程从协议选择、配置来源、模型能力和运行环境排查客户端接入,不把改地址视为万能兼容。
4
如何评测模型与 API 渠道:用自己的任务建立验收表
模型与成本从固定样本、盲评、时延到每个合格结果的成本,建立可重复的小规模选型流程。
5
AI API 返回 401、403、404、429:按顺序排查
问题排查从认证、权限、路径、参数和限流逐步缩小范围,附可用于沟通的脱敏问题模板。
随机文章随机推荐














