技术教程

基础教程-开发者快速接入

基础教程-开发者 · 快速接入 #

基础信息 #

更多baseURL 👉 基础概念-API地址

文本对话接口 #

请求

  • 方法: POST

  • 路径: /v1/chat/completions

  • Headers:

    • Accept: application/json

    • Authorization: Bearer sk-****** (你的API Key)

    • Content-Type: application/json

请求参数 #

{
  "model": "gpt-4o-mini",
  "messages": [
    {
      "role": "system",
      "content": "You are a helpful assistant."
    },
    {
      "role": "user",
      "content": "周树人和鲁迅是兄弟吗?"
    }
  ]
}

cURL 示例 #

curl -X POST "https://api.whatai.cc/v1/chat/completions" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer sk-******" \  # 替换为你的API Key
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-4o-mini",
    "messages": [
      {
        "role": "system",
        "content": "You are a helpful assistant."
      },
      {
        "role": "user",
        "content": "周树人和鲁迅是兄弟吗?"
      }
    ]
  }'

Python 示例 #

import requests
import json

# API配置
url = "https://api.whatai.cc/v1/chat/completions"
headers = {
    'Accept': 'application/json',
    'Authorization': 'Bearer sk-******',  # 替换为你的API Key
    'Content-Type': 'application/json'
}

# 请求数据
payload = json.dumps({
    "model": "gpt-4o-mini",
    "messages": [
        {
            "role": "system",
            "content": "You are a helpful assistant."
        },
        {
            "role": "user",
            "content": "周树人和鲁迅是兄弟吗?"
        }
    ]
})

# 发送请求
response = requests.post(url, headers=headers, data=payload)

# 输出响应
print(response.text)

响应 #

返回JSON格式的对话结果

embedding代码例子

embedding代码例子 #

基本概念 #


什么是Embedding? #

Embedding(嵌入)是将离散数据(如单词、句子)映射到连续向量空间的技术。通过Embedding:

  • 语义相似的文本在向量空间中距离更近

  • 便于机器学习模型处理文本数据

  • 典型应用:搜索、推荐、分类等场景

常见Embedding模型 #

  1. text-embedding-3-small Openai主流emb模型

  2. text-embedding-3-large

  3. text-embedding-ada-002

技术特点 #


特性 说明
维度 通常为数百到数千维(如1024维)
归一化 多数Embedding会做L2归一化
距离度量 常用余弦相似度计算向量距离
多语言支持 现代模型通常支持多语言嵌入

请求地址 #


POST https://api.whatai.cc/v1/embeddings

认证方式 #


需要在请求头中添加 API Key:

headers = {
    "Authorization": "Bearer sk-******",  # 替换为你的API令牌
    "Content-Type": "application/json"
}

请求参数 #


参数名 类型 必填 说明
input string/array 单条文本或文本列表
model string 使用的模型名称
encoding_format string 返回格式(float/base64)

请求示例 #


import openai

# 设置OpenAI API密钥和基础URL
openai.api_key = "sk-***************************"  # 替换为你的 key
openai.base_url = "https://api.whatai.cc/v1/"  #  这里是API的 base url,注意这里v1后面需要/,最后的 / 很容易漏掉。

def get_embedding(text):
    response = openai.embeddings.create(
        model="text-embedding-3-small",
        input=text
    )
    return response.data[0].embedding

# 示例文本
text = "这是一个示例文本,用于演示如何获取文本嵌入。"

# 获取文本嵌入
embedding = get_embedding(text)

print(f"文本: {text}")
print(f"嵌入向量维度: {len(embedding)}")
print(f"嵌入向量前5个元素: {embedding[:5]}")

典型应用场景 #


  1. 语义搜索:通过向量相似度匹配查询和文档

LangChain​

LangChain #


注意事项 ​ #

  • openai_api_base, 的末尾要加上, /v1/chat/completions, ,而且目前只支持 Chat 模型,请确认不要导入错误的包。

示例代码 ​ #

from langchain.chat_models import ChatOpenAI

llm = ChatOpenAI(
    openai_api_base="https://api.whatai.cc/v1/chat/completions", 
    openai_api_key="sk-xxxxx",
)

res = llm.predict("hello")

print(res)

高级功能-官方SDK支持

高级功能-官方SDK支持 #

支持的厂商 #

  • OpenAI SDK

  • Anthropic Claude SDK

  • Google Gemini SDK

配置方法 #

只需修改 SDK 的 Key 和 Base Url 即可使用

# 初始化 OpenAI 客户端
client = OpenAI(
    api_key="sk-********************************",  # 替换为你的神马中转api 令牌key
    base_url="https://api.whatai.cc/v1",  # 使用 神马中转API 中转地址
)

# 示例调用
response = client.chat.completions.create(
    model="gpt-4.1-mini",
    messages=[{"role": "user", "content": "Hello!"}]
)
print(response.choices[0].message.content)

提示:将 ****** 替换为你实际的 API Key,其他厂商 SDK 配置方式类似

基本概念-按量付费

📖 基本概念-按量付费 #

💸 按量计费:像交水电费一样简单! #

用多少字,付多少钱! 就像家里用电——开灯时间越长,电费越多~

计费示例 ​ #

  • 文字类模型的计费通常是按照 tokens 计算。

  • 例如,1K tokens 消耗 xx 美金,这种计费方式与官方渠道相同。

优惠政策 ​ #

  • 官方渠道的美金购买需要实时汇率(大约 1:7)。

  • 在我们平台,您可以直接以折扣价格购买美金。

  • 具体汇率请查询充值页。

🌰 实景案例 #

【示例】对于default分组下的gpt-4o-mini模型,假设提问文字数量为6323 tokens,文字输出数量为2481 tokens

Image 5

Input(提示token数):0.15/M tokens (您提问的文字)
Output(补全token数): 0.6/M tokens (AI回答的文字)
Cache(模型倍率):0.075
计算方式为:
$0.15 / 1000000 * 6323 + 0.6 / 1000000 * 2481 + 0.075/1000000 * 2048 = 0.002284$ 

📊 模型倍率(看不懂可以忽略) #

支持价格页面的模型价格即实价!

常见错误以及解决办法

常见错误以及解决办法 ​ #


Q:为什么 gpt-5 说自己是 gpt-4o 是正确的?而chatGPT官方回答自己是gpt-5? #

A: 这是新手常见误会。询问模型“你是谁”获得了不达预期的回答。这是因为模型在训练过程中是没有自己模型型号信息的,但包含了老模型的相关信息。模型厂商同时训练很多模型,某个模型达到某个设定效果后才会给模型命名,所以你问 gpt-5 是谁,他回答自己是 gpt-4o 。openai官方的chatgpt是成熟的网页端产品,在前端对此类问题做了优化,所以你问官方模型能回答自己是gpt-5。

Q:为什么 ChatGPT Plus 的 GPT-4 能回答出自己是 GPT-4? ​ #

A: 简单来说,ChatGPT Plus 使用的模型版本和开放给 API 的并不一样,作为内部版本,很大可能会用更新的数据去训练,甚至是实时数据训练。虽然都叫 GPT-4,但给出的答案不同,因为训练数据不同。

Q:那我如何去判断他是否是 GPT-4 模型? ​ #

A: 可使用以下逻辑性问题进行测试。 问题: 鲁迅和周树人是什么关系? GPT-3.5: 鲁迅和周树人是两个不同的人 GPT-4: 鲁迅和周树人是同一个人。

Q:无法登录? ​ #

A: 请确保用户名填写正确,不要填写邮箱地址,填写你注册时的用户名,如确定用户名没问题无法登录尝试使用邮箱当用户名尝试登录。如遇到登录问题无法自行解决,请联系客服,第一时间为您处理。

Q:为什么请求后没吐字没补全 token? ​ #

A: 有以下可能:

  • 快吐字了,客户端断开连接。

  • tools call 或 function call。

  • OpenAI 直接返回 [Done],一般是政策安全相关拒绝回答,需要结合返回的 finish_reason 或内容进行判断。

高级功能-通知设置 · 额度预警通知

高级功能-通知设置 · 额度预警通知 #

🔔 事件订阅与通知配置指南 #

关键事件,实时掌控!

订阅重要事件并设置通知渠道,额度预警、系统更新等消息即时送达,让您永远快人一步 🚨

💻 配置入口:

👉神马中转API个人中心

Image 6

三步配置法(以额度预警为例) #

1️⃣ 选择订阅事件

🔍 可订阅事件清单 #
事件类型 触发条件 频率限制 推荐场景
公告通知 平台发布重要公告 无限制(实时推送) 所有用户必选 ✅
营销信息 平台推出优惠活动/新产品 无限制(实时推送) 关注优惠活动的用户
用户额度预警 总钱包余额 < 您设置的阈值 ≤1条/小时(防骚扰) 所有用户必选 ✅
Key额度预警 单个API Key余额 < 您设置的阈值 Key独立 ≤1条/小时 管理多Key的企业用户

2️⃣ 配置通知渠道

🔧 通知渠道配置详解 #
渠道 配置难度 适用场景 关键配置项 实时性
邮件 ⭐☆☆☆☆ 非紧急通知/存档记录 邮箱地址(自动识别登录邮箱) 5分钟内
企业微信 ⭐⭐☆☆☆ 团队协作/内部告警 企业ID + 应用Secret + AgentID 即时
钉钉 ⭐⭐☆☆☆ 企业级监控/运维警报 Webhook URL + 密钥 即时
WxPusher ⭐☆☆☆☆ 个人微信接收通知 UID(扫码绑定) 即时
Webhook ⭐⭐⭐⭐☆ 系统集成/自动化流程 API端点URL + 自定义Header/Body模板 即时
Telegram ⭐⭐☆☆☆ 国际用户/开发者 Bot Token + Chat ID 即时

3️⃣ 点击保存生效

基本概念-按次付费

📖基本概念-按次付费 #

💸 按次计费:像买奶茶一样简单! #

不问字数多少,一次对话一票到底! 就像坐地铁——无论坐1站还是10站,票价都一样

对话场景 字数统计 按次计费 按量计费对比
简单问候 问5字 + 答15字 $0.1 ❌ $0.0012
问:“你好” (固定消费) (输入$0.00015)
答:“请问需要帮助吗?” (输出$0.0009)
深度咨询 问200字+答800字 $0.1 ❌ $0.054
问:“请分析2023全球…” (固定消费) (输入$0.006)
答:“根据IMF报告…” (输出$0.048)

💎 黄金规律:当字数 >1000字时,按次计费更划算!

适用场景导航 #

bash复制代码# 👍 强烈推荐使用  ➜  
   [ 写长文 ]   [ 代码调试 ]   [ 报告分析 ]  
   [ 法律咨询 ] [ 学术修改 ] [ 剧本创作 ]  

# ️ 不推荐使用 ➜  
   [ 查天气 ]   [ 简单翻译 ]   [ 短问答 ]