> 火山引擎 RDS for MySQL 是火山引擎开发的一款完全托管、稳定、可扩展的关系型数据库服务。 火山引擎 是字节跳动(TikTok 母公司)开发的云服务平台。此集成允许您在 LangChain 中将 RDS for MySQL 用作向量存储。
设置
要使用火山引擎 MySQL 向量存储,您需要一个火山引擎账户和一个 RDS for MySQL 实例。
安装
安装集成包:
pip install -U langchain-volcengine-mysql
实例化
配置 mysql 子模块,然后访问 mysql.vector_store.
from langchain_volcengine_mysql import mysql
from langchain_openai import OpenAIEmbeddings
embeddings = OpenAIEmbeddings()
mysql.configure(
host="your-mysql-host.example.com",
port=3306,
user="your_user",
password="your_password",
database="your_db",
table_name="langchain_vectors",
embedding_function=embeddings,
)
vector_store = mysql.vector_store
retriever = mysql.retriever
管理向量存储
添加项目
from langchain_core.documents import Document
docs = [
Document(page_content="Volcengine RDS for MySQL is a managed relational database.", metadata={"source": "docs"}),
Document(page_content="You can use it as a LangChain vector store.", metadata={"source": "docs"}),
]
vector_store.add_documents(documents=docs, ids=["1", "2"])
删除项目
vector_store.delete(ids=["2"])
查询向量存储
相似性搜索
results = vector_store.similarity_search(query="What is RDS for MySQL?", k=1)
for doc in results:
print(f"* {doc.page_content} [{doc.metadata}]")
用作检索器
docs = retriever.invoke("What is RDS for MySQL?")
API 参考
请参阅官方 PyPI 文档.