视频加载失败

用 Python 标准库完成第一次 HiKaRi API 调用

582 字
3 分钟
用 Python 标准库完成第一次 HiKaRi API 调用

下面用 Python 3 标准库验证 OpenAI 兼容的 Chat Completions 接口。你需要一个有可用资金、绑定了相应分组的 HiKaRi Key,以及该分组支持的精确模型 ID。仅支持其他协议的模型不能直接套用这段请求体。

先在本机设置环境变量#

Windows PowerShell:

Terminal window
$env:API_KEY = Read-Host '输入本站 API Key'
$env:MODEL_ID = Read-Host '输入模型广场中的精确模型 ID'
python first_call.py

macOS、Linux 或 Git Bash:

Terminal window
read -s -p 'API Key: ' API_KEY; echo
export API_KEY
read -p '精确模型 ID: ' MODEL_ID
export MODEL_ID
python3 first_call.py

示例中的交互输入用于本机验证。共享电脑或生产环境应使用自己的密钥管理方式;不要将 Key 写入 Git 仓库、前端代码或公开笔记。

保存为 first_call.py#

import json
import os
import urllib.error
import 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/
作者
HiKaRi Blog
发布于
2026-10-25
许可协议
保留所有权利
Profile Image of the Author
HiKaRi Blog
把 AI API 接好、用稳、算清楚。
从这里开始
第一次接入看入门指南;报错先看排查清单。实时模型、渠道和价格以 API 主站为准。
分类
标签
最新动态
站点统计
文章
13
分类
5
标签
36
总字数
11,127
运行时长
0 天
最后活动
0 天前
站点信息
构建平台
Local
博客版本
Firefly v6.16.8
文章许可
保留所有权利
文章目录