NectarAI 开发文档
基于 OpenAI 格式的兼容接口,上游调用 SiliconFlow 微调模型(Nectar-7B)。
所有示例均可直接复制测试,默认 Host:https://open.ai.zjb522.cn
1. 快速开始
获取你的 API-Key(控制台右上角),替换下方 YOUR_API_KEY 即可测试:
curl -sS "https://open.ai.zjb522.cn/api/v1/chat/completions" \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-d '{
"model": "NectarAI/Nectar-7B",
"messages": [{"role": "user", "content": "用中文回答:今天北京天气如何?"}],
"temperature": 0.7,
"stream": false
}'
返回示例:
{
"id": "chatcmpl-xxx",
"object": "chat.completion",
"created": 1704067200,
"model": "NectarAI/Nectar-7B",
"choices": [{
"index": 0,
"message": {
"role": "assistant",
"content": "北京今天晴,气温 22~30 ℃,南风 2 级……"
},
"finish_reason": "stop"
}],
"usage": {
"prompt_tokens": 22,
"completion_tokens": 38,
"total_tokens": 60
}
}
2. 接口总览
| 端点 | 方法 | 描述 |
/api/v1/chat/completions |
POST |
聊天完成(支持流式) |
/api/v1/completions |
POST |
文本补全(OpenAI 旧版兼容) |
/api/v1/models |
GET |
列出可用模型 |
/api/v1/models/{model_id} |
GET |
获取模型详情 |
/api/v1/usage |
GET |
个人用量与余额 |
3. 通用请求格式
- Base URL:
https://open.ai.zjb522.cn
- 鉴权方式:Bearer Token(放在 Header
Authorization)
- 请求体:JSON,UTF-8 编码
- 返回体:统一 JSON,含
error 字段即表示失败
4. 聊天完成 POST /api/v1/chat/completions
① 请求体(非流式)
{
"model": "NectarAI/Nectar-7B",
"messages": [
{"role": "system", "content": "你是智能助手"},
{"role": "user", "content": "1+1"}
],
"max_tokens": 512,
"temperature": 0.7,
"top_p": 0.9,
"stream": false
}
② 流式响应(SSE)
将 "stream":true 即可,返回标准 text/event-stream,每段格式:
data: { "choices":[{ "delta":{"content":"xxx"} }] }
结束标志:
data: [DONE]
5. 计费标准
| 模型 | 单价(CNY/1k tokens) | 最大 tokens |
NectarAI/Nectar-7B |
¥0.01 |
4 096 |
计费公式:cost = total_tokens × 0.01 / 1000
余额不足时返回 HTTP 402 insufficient_funds。
6. 错误码速查
| HTTP | code | 说明 |
| 401 | invalid_api_key | API-Key 无效或账号被禁用 |
| 402 | insufficient_funds | 余额不足 |
| 400 | missing_messages | 缺少 messages 字段 |
| 405 | method_not_allowed | HTTP 方法不被允许 |
| 502 | upstream_error | 上游 SiliconFlow 异常 |
7. PHP 调用示例
<?php
$apiKey = 'YOUR_API_KEY';
$host = 'https://open.ai.zjb522.cn';
$payload = [
'model' => 'NectarAI/Nectar-7B',
'messages' => [['role' => 'user', 'content' => '用中文回答:什么是人工智能?'],
'temperature' => 0.7,
'stream' => false
];
$ch = curl_init($host.'/api/v1/chat/completions');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'Authorization: Bearer '.$apiKey
],
CURLOPT_POSTFIELDS => json_encode($payload, JSON_UNESCAPED_UNICODE),
CURLOPT_RETURNTRANSFER => true,
CURLOPT_SSL_VERIFYPEER => true
]);
$response = curl_exec($ch);
curl_close($ch);
$data = json_decode($response, true);
echo $data['choices'][0]['message']['content'] ?? '生成失败';
?>
8. 常见问答
- Q:支持 GPT-4 吗?
A:当前仅映射到 NectarAI/Nectar-7B(基于 Qwen2.5-7B 的 LoRA 微调),后续会按需增加更多模型。
- Q:token 怎么估算?
A:系统已内置简化算法(中文≈2 字符/token,英文≈4 字符/token),实际以上游回带值为准。
- Q:余额不足会怎样?
A:接口直接返回 HTTP 402,不消耗任何 token。
- Q:是否支持函数调用 / 长上下文?
A:目前上下文长度 4 k tokens,暂不支持 function calling。
9. 更新日志
| 日期 | 版本 | 说明 |
| 2025-12-17 |
v1.0.0 |
初版上线,支持 chat/completions、completions、models、usage 端点 |