中文 ▾

面向开发者的 Venice API 文档

Venice API 是一项兼容 OpenAI 标准的无审查 LLM 服务。使用基础 URL HTTPS://api.veniceapi.com/v1 发送请求,并在 Authorization 头中提供 API 密钥。

认证与基础 URL

立即通过设置基础 URL 为 https://api.veniceapi.com/v1 并在 Authorization 头部,您通过 Google 或邮箱注册后立即获得此密钥。此单一模型处理所有文本生成,无需路由逻辑。您无需管理多个端点或代理配置。

保持密钥安全。每个账户同时只允许一个活跃密钥;生成新密钥将使旧密钥失效。这确保 token 使用和计费的清晰归属。

聊天完成端点

向 /v1/chat/completions 使用标准 HTTP POST 方法的端点。API 接受包含模型名称、系统指令和用户消息的 JSON 负载。

以下是基本请求结构:

curl https://api.veniceapi.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Check if the service blocks adult content in the test endpoint"}]
  }'

响应返回生成的文本、令牌使用统计信息和补全标志。您可以使用诸如 之类的参数调整行为 temperature 或 top_p. 这些设置控制输出中的创造力和随机性。

错误返回标准 HTTP 代码。401 表示密钥无效,402 表示余额不足。使用这些代码在自动化工作流中优雅地处理失败。

Python SDK 集成

使用官方 OpenAI Python 库与未审查的 LLM 交互。使用 Venice base URL 和您的 API 密钥配置客户端。此方法简化了请求构建和响应解析。

from openai import OpenAI

client = OpenAI(base_url="https://api.veniceapi.com/v1", api_key="YOUR_KEY")

resp = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)

此方法与为 OpenAI 设计的现有代码库无缝协作。您可以更改 base URL 而无需大幅修改应用程序逻辑。库会自动处理序列化和网络连接。

请记住,模型 ID 必须设置为 uncensored. 这确保您使用的是 Venice 提供的特定微调模型。其他模型可能不会表现出相同的行为模式。

Node SDK 集成

使用 OpenAI Node SDK 将 API 集成到 JavaScript 或 TypeScript 项目中。设置 baseURL 到 Venice 端点并提供您的 API 密钥。此设置支持同步和异步操作。

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.veniceapi.com/v1", apiKey: process.env.API_KEY });

const resp = await client.chat.completions.create({
  model: "uncensored",
  messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);

此集成使您能够快速构建聊天机器人、内容生成器或数据提取工具。SDK 管理请求生命周期,包括重试和错误处理。如果需要,您可以传递自定义标头以用于高级用例。

请确保导入正确版本的 SDK。旧版本可能不支持 Venice API 提供的所有功能。请查看文档以获取兼容性详情。

通过 SSE 的流式响应

通过设置 stream 参数到 trueAPI 返回服务器发送事件(SSE)流,而不是完整的 JSON 对象。这允许你实时显示生成的令牌。

stream = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Tell the story in second person."}],
    stream=True,
)
for chunk in stream:
    if chunk.choices and chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)

流式传输降低了用户的感知延迟。它非常适合聊天界面或实时仪表板。流的最后一个块包含最终的 token 使用统计信息。解析此数据以准确跟踪成本。

优雅地处理连接中断。如果流中断,您可以重试请求。如果同时有多个流处于活动状态,API 不保证顺序。在高流量期间密切监控您的速率限制。

错误处理和限制

API 的速率限制为每分钟 300 次请求(每个密钥)。并发请求上限为每个密钥 8 个。请求体不得超过 8 MB。超出这些限制将返回 429 Too Many Requests 错误。

上下文窗口大小为 100,000 个 token(提示词和补全总和)。每次请求的最大输出为 16,000 个 token。如果 max_tokens 未设置时,限制默认为 2,048 个 token。请相应规划您的输入以避免截断。

常见错误包括 401(无效密钥)和 402(余额不足)。处理这些代码以提示用户充值。对于计费问题使用支持页面。余额永不过期,因此您可以稍后充值。

常见问题

Venice API 的基础 URL 是什么?

基础 URL 为 HTTPS://api.veniceapi.com/v1。使用此端点处理所有聊天补全请求。它与标准的 OpenAI SDK 兼容。

我如何对请求进行身份验证?

将 API 密钥包含在 Authorization 请求头中,格式为 Bearer token。注册后立即获得密钥。

代币定价费率是多少?

输入令牌每 1M 个收费 $0.15。输出令牌每 1M 个收费 $0.50。错误免费,预付费余额永不过期。

API 密钥几分钟内就绪

注册,获取你的密钥,并更新基础 URL。这就是完整的配置。

获取 API 密钥查看文档