以编程方式使用文档

本文档将帮助您开始使用 OCI 生成式 AI 嵌入模型。Oracle Cloud Infrastructure (OCI) 生成式 AI 提供最先进的文本和图像嵌入模型,支持语义搜索、RAG、聚类和跨模态应用。

有关详细文档,请参阅 OCI 生成式 AI 文档API 参考.

概述

集成详情

可序列化参数缓存异步下载版本
OCIGenAIEmbeddingslangchain-ocibeta!PyPI - 下载量!PyPI - 版本

模型特性

文本嵌入图像嵌入多模态批处理操作异步

设置

pip install -qU langchain-oci oci
uv add langchain-oci oci

设置身份验证:

oci setup config

实例化

from langchain_oci import OCIGenAIEmbeddings

embeddings = OCIGenAIEmbeddings(
    model_id="cohere.embed-english-v3.0",
    service_endpoint="https://inference.generativeai.us-chicago-1.oci.oraclecloud.com",
    compartment_id="ocid1.compartment.oc1..your-compartment-id",
)

用法

对技术文档构建语义搜索:

# Index code documentation
docs = [
    "authenticate() validates JWT tokens and returns user object",
    "authorize() checks user permissions for resource access",
    "audit_log() records user actions for compliance tracking"
]
doc_vectors = embeddings.embed_documents(docs)

# Search with natural language query
query = "How do I verify user identity?"
query_vector = embeddings.embed_query(query)

# Find most relevant documentation

similarities = [
    np.dot(query_vector, doc_vec) /
    (np.linalg.norm(query_vector) * np.linalg.norm(doc_vec))
    for doc_vec in doc_vectors
]
best_match = docs[np.argmax(similarities)]
# Returns: "authenticate() validates JWT tokens..."

用例: 代码搜索、文档问答、日志分析、重复检测

图像嵌入

使用多模态嵌入通过文本查询搜索视觉资产:

from langchain_oci import OCIGenAIEmbeddings

embeddings = OCIGenAIEmbeddings(
    model_id="cohere.embed-v4.0",
    service_endpoint="https://inference.generativeai.us-chicago-1.oci.oraclecloud.com",
    compartment_id="ocid1.compartment.oc1..your-compartment-id",
)

# Index architecture diagrams
diagrams = ["microservices.png", "database_schema.png", "network.png"]
image_vectors = embeddings.embed_image_batch(diagrams)

# Search with text query
query_vector = embeddings.embed_query("database relationships")

# Find best match
similarities = [np.dot(query_vector, v) / (np.linalg.norm(query_vector) * np.linalg.norm(v))
                for v in image_vectors]
print(diagrams[np.argmax(similarities)])  # "database_schema.png"

用例: 技术图表搜索、资产管理、视觉文档检索

可用模型

模型维度类型
cohere.embed-english-v3.01024纯文本
cohere.embed-multilingual-v3.01024纯文本
cohere.embed-v4.0256-1536文本 + 图像

请参阅 OCI 模型目录 获取所有模型。

RAG 示例

from langchain_community.vectorstores import FAISS

# Create vector store
vectorstore = FAISS.from_documents(documents, embeddings)

# Search
results = vectorstore.similarity_search("your query", k=3)

异步

用于生产环境的异步操作:

query_vector = await embeddings.aembed_query("What is AI?")
doc_vectors = await embeddings.aembed_documents(["Doc 1", "Doc 2"])

API 参考

有关所有 OCIGenAIEmbeddings 功能和配置的详细文档,请访问 API 参考.

相关内容