Mock LLM API 指南

创建免费的 LLM 流式端点,模拟 OpenAI、Claude 和其他 AI 提供商。在不消耗数千美元 API 调用费用的情况下构建和测试 AI 功能。

快速开始

创建 Mock LLM 流式端点只需不到 30 秒。按照以下简单步骤操作:

  1. 1

    访问 LLM Mock 页面

    前往 mockapi.dog/llm-mock。系统会自动为你的端点生成唯一的 6 位字符代码。

  2. 2

    选择 LLM 提供商配置

    选择要模拟的提供商响应格式:

    • OpenAI - Chat Completions API 格式(GPT-4、GPT-3.5)
    • Anthropic Claude - Claude 流式格式
    • 通用流式 - 与提供商无关的 token 流
    • 通用 JSON - 简单 JSON 响应(无流式)
  3. 3

    选择内容模式

    选择如何生成响应内容:

    • 生成式 - 自动生成类 LLM 文本(聊天、技术或 Markdown 风格)
    • 静态 - 原样使用你提供的文本
    • 混合 - 你的文本后接生成的延续内容
  4. 4

    配置 Token 生成(可选)

    对于生成式或混合模式,设置最小和最大 token(建议 100-300)。生成的文本长度将在这些值之间随机变化。静态模式不需要此设置。

  5. 5

    完成验证并保存

    完成 Turnstile 验证,然后点击 "保存 Mock 端点"。你的端点 URL 会自动复制!

    https://abc123.mockapi.dog/v1/chat/completions

就这样!立即开始流式传输

你的端点已准备好使用。将你的 OpenAI/Claude baseURL 替换为你的 Mock 端点即可开始测试。无需身份验证或 API 密钥。

成本问题

真实的 LLM API 价格不菲。在开发、测试和原型设计期间,成本可能迅速失控。以下是使用真实提供商的费用:

OpenAI GPT-4

昂贵
输入$10 / 100 万 token
输出$30 / 100 万 token

示例: 测试聊天机器人 1000 次对话(每次平均 500 token)= $20+

Anthropic Claude

高昂
输入$8 / 100 万 token
输出$24 / 100 万 token

CI/CD 流水线: 每天运行 100 次测试 = $300+/月

使用 MockAPI Dog:$0

用于开发和测试的免费流式响应。在开发阶段节省数千美元。仅在准备投入生产时切换到真实 API。

为什么使用 LLM Mock API?

节省费用

避免在开发期间花费数千美元。在不消耗 API 额度的情况下测试你的 UI、流式逻辑和错误处理。

  • 无需 API 密钥或账单设置
  • 开发期间免费请求
  • 非常适合独立开发者和初创公司

即时测试

即时测试流式响应、UI 动画和错误状态。无需等待真实 API 调用或处理速率限制。

  • 可配置的响应速度和 token
  • 测试边界情况和错误场景
  • 可离线工作 —— 无需互联网

多种提供商

在不管理多个 API 密钥的情况下,使用不同的 LLM 提供商测试你的应用。轻松在 OpenAI、Claude 和通用格式之间切换。

  • OpenAI 兼容端点
  • 支持 Anthropic Claude 格式
  • 通用 SSE 流式格式

CI/CD 集成

在 CI/CD 流水线中运行自动化测试,无需担心 API 成本或速率限制。在每次提交时测试你的 AI 功能。

  • 无需身份验证
  • 一致、可预测的响应
  • 快速执行,快速反馈

支持的提供商

MockAPI Dog 支持流行 LLM 提供商的流式格式。只需将端点设置为你首选 SDK 中的 baseURL。

OpenAI 格式

GPT-4、GPT-3.5

兼容官方 OpenAI SDK。支持与 GPT-4 和 GPT-3.5-turbo 相同格式的流式响应。

兼容模型:
gpt-4gpt-4-turbogpt-3.5-turbogpt-4o

Anthropic 格式

Claude

兼容 Anthropic SDK。支持与 Claude 3 Opus、Sonnet 和 Haiku 相同格式的流式响应。

兼容模型:
claude-3-opusclaude-3-sonnetclaude-3-haikuclaude-2

通用 SSE 格式

通用

标准服务器发送事件(SSE)格式。可与任何流式客户端配合使用,或构建自己的自定义集成。

使用场景:
  • 自定义 LLM 集成
  • 测试 EventSource 实现
  • 学习流式协议

内容模式

选择 Mock LLM 端点如何生成响应内容。每种模式对流式文本提供不同程度的控制。

生成式

自动生成不同风格的类 LLM 文本。可选择聊天(对话语调)、技术(编程相关)或 Markdown(带列表和代码块的格式化文本)。

最适合: 无需编写自定义内容的真实测试、UI 动画、通用原型设计

静态

使用你提供的精确文本作为响应。文本完全按原样流式传输,不进行任何生成或修改。

最适合: 特定测试场景、精确的预期响应、边界情况测试

混合

将你提供的文本与自动生成的延续内容结合。你的文本先流式传输,然后是生成的类 LLM 内容。

最适合: 可控的开头加上真实的延续,测试部分响应

生成内容的文本风格

使用生成式或混合模式时,可以选择聊天(对话)、技术(编程相关)或 Markdown(包含格式化、列表、代码块)风格。

Token 生成设置

微调 Mock LLM 端点如何生成和流式传输 token,以满足你的测试需求。

Token 数量

设置要生成的 token 数量(大致相当于单词)。适用于测试不同的响应长度。

短响应50-100 tokens
中等响应200-500 tokens
长响应1000+ tokens

流式速度

控制 token 流式传输的速度。使用不同的流式速度测试你的 UI,确保动画流畅。

快速~50ms/token
普通~100ms/token
慢速~200ms/token

专业提示

使用不同速度进行测试,确保你的 UI 能优雅地处理快速和慢速流式传输。真实的 LLM API 响应时间可能差异很大。

代码示例

以下是如何在流行的 SDK 和库中使用你的 Mock LLM 端点。

OpenAI SDK

用你的 Mock 端点替换 baseURL。无需 API 密钥!

import OpenAI from 'openai';

const openai = new OpenAI({
  baseURL: 'https://xyz789.mockapi.dog/llm',
  apiKey: 'dummy-api-key', // Mock endpoint doesn't check API keys
});

async function main() {
  const stream = await openai.chat.completions.create({
    model: 'gpt-4',
    messages: [{ role: 'user', content: 'Hello!' }],
    stream: true,
  });

  for await (const chunk of stream) {
    const content = chunk.choices[0]?.delta?.content || '';
    process.stdout.write(content);
  }
}

main();

Anthropic SDK

通过设置自定义 baseURL 与 Anthropic SDK 一起使用。

import Anthropic from '@anthropic-ai/sdk';

const anthropic = new Anthropic({
  baseURL: 'https://xyz789.mockapi.dog/llm',
  apiKey: 'dummy-api-key', // Mock endpoint doesn't check API keys
});

async function main() {
  const stream = await anthropic.messages.stream({
    model: 'claude-3-opus-20240229',
    max_tokens: 1024,
    messages: [{ role: 'user', content: 'Hello!' }],
  });

  for await (const chunk of stream) {
    if (chunk.type === 'content_block_delta' && chunk.delta.type === 'text_delta') {
      process.stdout.write(chunk.delta.text);
    }
  }
}

main();

通用 Fetch(SSE)

与原生 JavaScript/TypeScript 一起使用,获得最大的灵活性。

async function streamResponse() {
  const response = await fetch('https://xyz789.mockapi.dog/llm/stream', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({
      prompt: 'Hello, world!',
      max_tokens: 500,
    }),
  });

  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);
    const lines = chunk.split('\n');

    for (const line of lines) {
      if (line.startsWith('data: ')) {
        const data = line.slice(6);
        if (data === '[DONE]') return;

        try {
          const json = JSON.parse(data);
          console.log(json.content);
        } catch (e) {
          // Skip invalid JSON
        }
      }
    }
  }
}

streamResponse();

就这么简单!

只需替换 baseURL 即可使用。你现有的代码无需修改即可工作。

实际使用场景

聊天机器人开发

构建和测试聊天机器人 UI,无需在 API 调用上花费。测试消息线程、流式动画和错误处理。

  • 测试流式消息动画
  • 验证对话线程
  • 调试 UI 边界情况

测试与 QA

运行自动化测试和手动 QA,无 API 成本。一致地测试不同的响应场景和边界情况。

  • CI/CD 中的自动化 E2E 测试
  • 一致的测试数据
  • 快速测试执行

学习与教程

无需花钱即可学习 AI 集成。非常适合教程、课程和教育内容。

  • 学生无需设置 API 密钥
  • 免费练习
  • 安全的学习环境

MVP 和演示

无需前期成本即可构建概念验证和演示。在投资生产 API 之前向投资者和相关方展示你的愿景。

  • 快速原型设计
  • 投资者演示
  • 低成本验证想法

高级功能

自定义请求头

添加自定义响应请求头,测试 CORS、身份验证流程以及 LLM 集成中其他基于请求头的逻辑。

可配置延迟

模拟网络延迟和慢速流式速度,测试应用程序中的加载状态和超时处理。

错误模拟

通过模拟速率限制、身份验证错误和流式中断来测试错误处理。

无需身份验证

Mock 端点不需要 API 密钥或身份验证。非常适合 CI/CD 流水线和公开演示。

故障排除

流式传输不工作

确保你使用了正确的提供商格式,且你的客户端支持流式传输。检查你是否将响应作为流读取,而不是完整响应。

// Make sure to set stream: true const stream = await openai.chat.completions.create({ stream: true, // This is required! // ... });

响应过快/过慢

在端点配置中调整流式速度。不同的速度有助于测试各种网络条件和用户体验。

SDK 兼容性问题

确保你使用的是最新版本的 SDK。检查提供商格式是否与你的 SDK 匹配(OpenAI SDK 需要 OpenAI 格式,Anthropic SDK 需要 Anthropic 格式)。

浏览器中的 CORS 错误

Mock 端点配置了宽松的 CORS 请求头。如果仍然出现 CORS 错误,请检查你的请求头,确保未发送受限请求头。

提示和最佳实践

使用不同速度进行测试

真实的 LLM API 速度各异。使用快速和慢速流式传输测试你的 UI,确保所有条件下的流畅用户体验。

使用环境变量

将 baseURL 存储在环境变量中。通过更改单个变量在 Mock 和生产 API 之间切换。

// .env.development OPENAI_BASE_URL=https://xyz789.mockapi.dog/llm // .env.production OPENAI_BASE_URL=https://api.openai.com/v1

测试错误场景

不要只测试成功路径。使用错误模拟来测试速率限制、网络故障和格式错误的响应。

LLM 开发工作流

遵循以下工作流以实现高效的 AI 开发:

  1. 使用 Mock 端点构建 UI 和流式逻辑
  2. 使用不同的内容模式和速度进行全面测试
  3. 在 CI/CD 中使用 Mock 端点运行自动化测试
  4. 仅在最终集成测试时切换到真实 API
  5. 使用生产 API 密钥部署

在生产前验证

在切换到生产 API 之前,在暂存环境中使用真实提供商的 API 验证你的实现,以发现行为上的任何差异。

术语表

LLM(大型语言模型)

像 GPT-4 和 Claude 这样的 AI 模型,可以生成类人的文本响应。示例:OpenAI 的 GPT 系列、Anthropic 的 Claude、Google 的 Gemini。

流式 API

以分块方式发送数据而不是等待完整响应的 API。允许在生成 AI 文本时实时显示。

Token

LLM 中文本的基本单位。大致相当于一个单词或单词片段。LLM 定价通常基于 token 数量。

SSE(服务器发送事件)

一种允许服务器实时向客户端推送数据的技术。LLM API 使用它来流式传输响应。

baseURL

API 请求的基础地址。将其替换为你的 Mock 端点 URL,以将请求重定向到 MockAPI Dog 而不是真实提供商。

提供商

提供 LLM API 的公司,例如 OpenAI(GPT)、Anthropic(Claude)、Google(Gemini)等。

准备好开始构建了吗?

几秒内创建你的第一个 Mock LLM 流式端点。无需注册,无需信用卡,毫无麻烦。在不消耗数千美元 API 调用费用的情况下开始构建 AI 功能。