Tifa-Ultra-V2-20250323
通过修改参数和提示学习如何优化AI模型的回复。下方的JSON数据预览区域会实时显示发送给API的请求内容和接收到的响应。

系统提示词

系统提示词用于设置AI模型的行为和知识范围

规则设置

规则可用于控制AI回复的风格、格式和内容。

示例对话

示例可用于模型输出的参考,服务器会添加一个过渡消息以标记新对话的开始。这对于Few-Shot学习非常有效。

模型参数

控制随机性,较高值使输出更多样化,较低值使输出更确定性
核采样,控制生成文本的多样性
生成响应的最大长度
降低模型重复内容的可能性
设置模型应该避免使用的词汇及其权重。权重越高,避免程度越强。

JSON数据预览

查看将要发送到API的完整JSON请求和接收到的响应
主要字段说明:
  • model: 使用的模型名称
  • messages: 对话历史消息列表,包含role(角色)和content(内容)字段
  • temperature: 控制输出随机性,值越高(如0.8)结果越多样,值越低(如0.2)结果越确定
  • top_p: 控制词汇选择多样性,值为0-1之间,影响模型的采样范围
  • max_tokens: 生成回复的最大长度,单位为token(大约为1.5-2个汉字)
  • repetition_penalty: 降低重复内容概率,值大于1,越大越惩罚重复
  • rule: 可用于控制模型输出字数、段落、对话占比、状态栏开关,也可以用于控制模型输出风格
  • examples: 示例可用于模型输出的参考,服务器会添加一个过渡消息以标记新对话的开始。这对于Few-Shot学习非常有效。
  • extra_body.bad_words: 避免词列表,可以设置模型应该避免使用的词汇及其权重。权重范围通常为1-100,权重越高避免程度越强。
路径: root

开发文档

欢迎使用TIFA AI API。本文档将指导您如何接入和使用我们的服务。TIFA AI提供强大的自然语言处理能力,支持多种场景应用。

当前版本:v1.0 最后更新:2024-03-20

主要特性

  • ✨ 支持流式输出,实时响应
  • ✨ 超长上下文支持,最大支持200K tokens
  • ✨ 多语言支持,支持中英日韩等10+种语言
  • ✨ 99.9%的服务可用性保证
  • ✨ 格式控制功能,支持JSON、Markdown等结构化输出
  • ✨ Few-Shot学习,通过示例引导模型输出
  • ✨ 规则引擎,精确控制输出风格和内容
  • ✨ 避免词功能,智能过滤不当词汇,提升输出质量

认证方式

所有API请求都需要使用API密钥进行认证。您可以在控制台获取API密钥。

⚠️ 请妥善保管您的API密钥,不要在客户端代码中明文存储。

注意事项:

  • API密钥具有完整的账户权限,请勿泄露
  • 建议使用环境变量或配置文件存储API密钥
  • 定期轮换API密钥以提升安全性
  • 可以为不同应用创建不同的API密钥

API Endpoint

POST https://api.leftnorth.com/v1/chat/completions

请求说明:

  • 支持HTTPS协议
  • 请求体必须是JSON格式
  • 响应编码为UTF-8
  • 支持跨域请求(CORS)

对话接口

接口地址: https://api.leftnorth.com/v1/chat/completions

请求方式: POST

Content-Type: application/json

对话接口支持单轮和多轮对话,可以通过调整不同参数来控制AI的行为表现。支持流式输出和普通输出两种模式。

参数说明

参数名 类型 必选 说明
model string 模型名,例如"tifa-ultra-v2-20250323"
messages array 对话历史,包含role和content字段
temperature number 温度参数,控制随机性,范围0-2,默认0.7
top_p number 核采样参数,控制多样性,范围0-1,默认0.95
max_tokens integer 生成文本的最大长度,默认2000
repetition_penalty number 重复惩罚,范围1-2,默认1.03
rule string 输出规则,控制格式、风格等
examples array 示例对话,用于Few-Shot学习
stream boolean 是否启用流式输出,默认false
extra_body.bad_words array 避免词列表,包含word(词汇)和weight(权重1-999)字段,权重越高避免程度越强

返回格式:

{
    "id": "chat_12345678",
    "object": "chat.completion",
    "created": 1679478935,
    "model": "tifa-ultra-v2-20250323",
    "choices": [{
        "message": {
            "role": "assistant",
            "content": "AI的回复内容"
        },
        "finish_reason": "stop",
        "index": 0
    }],
    "usage": {
        "prompt_tokens": 56,
        "completion_tokens": 31,
        "total_tokens": 87
    }
}

示例代码

curl -X POST "https://api.leftnorth.com/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "tifa-ultra-v2-20250323",
    "messages": [
      {
        "role": "user",
        "content": "你好,请介绍一下你自己"
      }
    ],
    "temperature": 0.7,
    "max_tokens": 1000,
    "extra_body": {
      "bad_words": [
        {"word": "牛逼", "weight": 7.0},
        {"word": "666", "weight": 8.0},
        {"word": "yyds", "weight": 9.0}
      ]
    }
  }'
import requests
import json

url = "https://api.leftnorth.com/v1/chat/completions"
headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer YOUR_API_KEY"
}

data = {
    "model": "tifa-ultra-v2-20250323",
    "messages": [
        {
            "role": "user",
            "content": "你好,请介绍一下你自己"
        }
    ],
    "temperature": 0.7,
    "max_tokens": 1000,
    "extra_body": {
        "bad_words": [
            {"word": "牛逼", "weight": 7.0},
            {"word": "666", "weight": 8.0},
            {"word": "yyds", "weight": 9.0}
        ]
    }
}

response = requests.post(url, headers=headers, json=data)
result = response.json()
print(result)
const response = await fetch('https://api.leftnorth.com/v1/chat/completions', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_API_KEY'
  },
  body: JSON.stringify({
    model: 'tifa-ultra-v2-20250323',
    messages: [
      {
        role: 'user',
        content: '你好,请介绍一下你自己'
      }
    ],
    temperature: 0.7,
    max_tokens: 1000,
    extra_body: {
      bad_words: [
        {word: "牛逼", weight: 7.0},
        {word: "666", weight: 8.0},
        {word: "yyds", weight: 9.0}
      ]
    }
  })
});

const result = await response.json();
console.log(result);

代码说明:

  • 示例中包含了基本的错误处理
  • 建议在生产环境中添加重试机制
  • 可以根据需要调整超时设置
  • stream模式下建议使用异步处理
  • 规则功能可以精确控制输出格式
  • 示例功能适用于Few-Shot学习场景
  • 避免词功能可以过滤不当词汇,权重越高避免程度越强

高级功能

格式控制 (rule)

通过 rule 参数精确控制输出格式、字数、风格等

data = {
    "model": "tifa-ultra-v2-20250323",
    "messages": [
        {"role": "user", "content": "介绍人工智能"}
    ],
    "rule": "格式:分3个段落\n字数:每段100字\n风格:专业但易懂",
    "temperature": 0.4
}
curl -X POST "https://api.leftnorth.com/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "tifa-ultra-v2-20250323",
    "messages": [
      {"role": "user", "content": "介绍人工智能"}
    ],
    "rule": "格式:分3个段落\\n字数:每段100字\\n风格:专业但易懂",
    "temperature": 0.4
  }'

Few-Shot 学习 (examples)

通过示例让模型学习特定的回答模式

data = {
    "model": "tifa-ultra-v2-20250323",
    "messages": [
        {"role": "user", "content": "评价这个产品"}
    ],
    "examples": [
        {"role": "user", "content": "评价iPhone"},
        {"role": "assistant", "content": "优点:\\n1. 系统流畅\\n2. 生态完善\\n\\n缺点:\\n1. 价格较高\\n2. 充电速度一般"}
    ],
    "temperature": 0.5
}
curl -X POST "https://api.leftnorth.com/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "tifa-ultra-v2-20250323",
    "messages": [
      {"role": "user", "content": "评价这个产品"}
    ],
    "examples": [
      {"role": "user", "content": "评价iPhone"},
      {"role": "assistant", "content": "优点:\\n1. 系统流畅\\n2. 生态完善\\n\\n缺点:\\n1. 价格较高\\n2. 充电速度一般"}
    ],
    "temperature": 0.5
  }'

流式输出 (stream)

实时获取模型生成的内容,提升用户体验

const response = await fetch('/v1/chat/completions', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_API_KEY'
  },
  body: JSON.stringify({
    model: 'tifa-ultra-v2-20250323',
    messages: [{role: 'user', content: '写一个故事'}],
    stream: true
  })
});

const reader = response.body.getReader();
const decoder = new TextDecoder();

while (true) {
  const { done, value } = await reader.read();
  if (done) break;
  
  const chunk = decoder.decode(value);
  // 处理流式数据
  console.log(chunk);
}
import requests

response = requests.post(
    'https://api.leftnorth.com/v1/chat/completions',
    headers={'Authorization': 'Bearer YOUR_API_KEY'},
    json={
        'model': 'tifa-ultra-v2-20250323',
        'messages': [{'role': 'user', 'content': '写一个故事'}],
        'stream': True
    },
    stream=True
)

for line in response.iter_lines():
    if line:
        print(line.decode('utf-8'))

避免词过滤 (bad_words)

智能过滤不当词汇,提升输出质量和内容安全性

data = {
    "model": "tifa-ultra-v2-20250323",
    "messages": [
        {"role": "user", "content": "评价一下这个产品"}
    ],
    "extra_body": {
        "bad_words": [
            {"word": "牛逼", "weight": 7.0},
            {"word": "666", "weight": 8.0},
            {"word": "yyds", "weight": 9.0},
            {"word": "绝绝子", "weight": 20.0}
        ]
    },
    "temperature": 0.7
}
curl -X POST "https://api.leftnorth.com/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "tifa-ultra-v2-20250323",
    "messages": [
      {"role": "user", "content": "评价一下这个产品"}
    ],
    "extra_body": {
      "bad_words": [
        {"word": "牛逼", "weight": 7.0},
        {"word": "666", "weight": 8.0},
        {"word": "yyds", "weight": 9.0},
        {"word": "绝绝子", "weight": 20.0}
      ]
    },
    "temperature": 0.7
  }'

权重说明:权重范围为1-100,数值越高避免程度越强。建议:

  • 轻微避免:1-5
  • 中等避免:6-15
  • 强烈避免:16-20
  • 完全避免:20+

参数调优

提供丰富的参数配置,实现个性化的输出控制。

  • temperature: 控制输出随机性 (0-2)
  • top_p: 控制输出多样性 (0-1)
  • max_tokens: 控制输出长度
  • repetition_penalty: 控制重复度 (1-2)

💡 这些高级功能可以组合使用,实现更精确的输出控制

错误处理

常见错误码:

错误码 说明 处理建议
400 请求参数错误 检查请求格式和参数
401 未授权 检查API密钥是否正确
429 请求过于频繁 实现请求限流
500 服务器错误 稍后重试或联系支持

使用限制

为了保证服务质量,API访问有以下限制:

  • 每个API密钥每分钟最多60次请求
  • 每月总使用量根据套餐不同有所限制
  • 单次请求最大tokens数为200K
  • 并发请求数限制为10个

💡 如需更高配额,请联系商务团队升级套餐

最佳实践

1. 错误处理

  • 实现完善的错误处理机制
  • 对网络错误进行重试
  • 设置合理的超时时间
  • 记录详细的错误日志

2. 性能优化

  • 使用连接池复用连接
  • 启用gzip压缩
  • 实现请求缓存
  • 采用异步处理方式

3. 安全建议

  • 使用环境变量存储密钥
  • 启用HTTPS传输
  • 实现请求签名机制
  • 定期更新API密钥

4. 开发建议

  • 合理使用规则功能控制输出
  • 利用示例功能提升输出质量
  • 做好开发环境与生产环境隔离
  • 实现优雅的降级机制

💡 这些最佳实践将帮助您构建更稳定可靠的应用