GitHub - samestrin/llm-interface: 一个简单的 NPM 接口,用于无缝与 36 个大语言模型(LLM)提供商交互

2026-06-21T04:19:24.435770

GitHub - samestrin/llm-interface: 一个简单的 NPM 接口,用于无缝与 36 个大语言模型(LLM)提供商交互

LLM Interface 是一个 npm 模块,可简化您在 Node.js 应用程序中与各种大语言模型(LLM)提供商的交互。它提供统一的接口,简化了在不同提供商及其模型之间切换的过程。

LLM Interface 包广泛支持各种语言模型提供商,涵盖 36 个不同的提供商和数百个模型。这种广泛覆盖确保您能灵活选择最适合您特定需求的模型。

LLM Interface 支持:AI21 Studio、AiLAYER、AIMLAPI、Anyscale、Anthropic、Cloudflare AI、Cohere、Corcel、DeepInfra、DeepSeek、Fireworks AI、Forefront AI、FriendliAI、Google Gemini、GooseAI、Groq、Hugging Face Inference、HyperBee AI、Lamini、LLaMA.CPP、Mistral AI、Monster API、Neets.ai、Novita AI、NVIDIA AI、OctoAI、Ollama、OpenAI、Perplexity AI、Reka AI、Replicate、Shuttle AI、TheB.ai、Together AI、Voyage AI、Watsonx AI、Writer 和 Zhipu AI。

v2.0.14

v2.0.11

依赖项

该项目依赖多个 npm 包和 API。以下是主要依赖项:

以下可选包可以添加以扩展 LLMInterface 的缓存能力:

安装

要安装 LLM Interface npm 模块,可以使用 npm:

npm install llm-interface

快速开始

首先导入 LLMInterface。您可以使用 CommonJS 的 require 语法:

const { LLMInterface } = require('llm-interface');

然后将您的提示发送给 LLM 提供商:

LLMInterface.setApiKey({ openai: process.env.OPENAI_API_KEY });

try {
  const response = await LLMInterface.sendMessage(
    'openai',
    'Explain the importance of low latency LLMs.',
  );
} catch (error) {
  console.error(error);
}

如果您愿意,也可以在一行内传递提供商和 API 密钥,从而跳过 LLMInterface.setApiKey() 步骤。

const response = await LLMInterface.sendMessage(
  ['openai', process.env.OPENAI_API_KEY],
  'Explain the importance of low latency LLMs.',
);

传递更复杂的消息对象也同样简单。规则相同:

const message = {
  model: 'gpt-4o-mini',
  messages: [
    { role: 'system', content: 'You are a helpful assistant.' },
    { role: 'user', content: 'Explain the importance of low latency LLMs.' },
  ],
};

try {
  const response = await LLMInterface.sendMessage('openai', message, {
    max_tokens: 150,
  });
} catch (error) {
  console.error(error);
}

LLMInterfaceSendMessageLLMInterfaceStreamMessage 仍然可用,并将一直保留到版本 3。

测试

该项目包含每个 LLM 处理器的测试。要运行测试,请使用以下命令:

npm test

测试套件:跳过 9 个,通过 93 个,总共 102 个中通过 93 个
测试用例:跳过 86 个,通过 784 个,总共 870 个
快照:总数 0
时间:630.029 秒

注意:由于 API 问题,目前跳过了 NVIDIA 测试用例;由于性能问题,跳过了 Ollama 测试用例。

请提交您的建议!

贡献

欢迎对此项目做出贡献。请 fork 该仓库并提交 pull request,附带您的更改或改进。

许可证

该项目根据 MIT 许可证授权 - 有关详细信息,请参见 LICENSE 文件。

查看原文