milvus基础使用记录

windows下的安装和部署

下载docker-compose.yml文件

https://github.com/milvus-io/milvus/releases

 下载完成后修改文件名为docker-compose.yml,然后启动docker-desktop,并在安装目录下打开终端

docker compose up -d

安装完成后,安装可视化界面(可选)

https://github.com/zilliztech/attu/releases

 安装完成即可

milvus的使用

 创建连接

milvus_client = MilvusClient(host="0.0.0.0", port="19530")

创建集合,集合类似于关系型数据库中的表

milvus_client.create_collection(
        collection_name="vector",      #集合名称
        dimension=768,      #集合中存储的向量维度
        metric_type="IP",  # 设置了用于计算向量之间相似度的距离度量类型。在这里使用的是“内积”
        consistency_level="Strong",  # 设置了集合的一致性级别

 插入向量数据

milvus_client.insert(collection_name="vector",data=data_vector)

向量检索

milvus_client.search(
            collection_name=db_name,      #检索的数据库
            data=[self.embeddings.embed_query(question)],   #将问题向量化
            limit=3        #返回的entities数量
        )

 TIps:为理解检索片段输入大模型的细节,顺便复习langchain中prompt的用法

PromptTemplate

prompt_template = PromptTemplate.from_template(
    "写一个关于 {content} 的 {adjective} 故事。"
)
prompt_template.format(adjective="文艺", content="历史")

 输出

写一个关于历史的文艺的故事

ChatPromptTemplate

定义对话上下文

messages = [SystemMessage(content="你是一位知识问答专家,可以根据用户提供的文档内容和上下文内容来回答用户的问题。若问题与文档内容不想关,则拒绝回答。文档内容:{context}"),
            HumanMessage(content="你好"),
            AIMessage(content="你好!请问有什么能够帮您?")]

添加用户问题question变量

messages.append(HumanMessage(content=f"{question}"))

 创建聊天提示模板

prompt = ChatPromptTemplate.from_messages(messages)

传入变量值,转化为列表格式,contexts和question都是传入的参数

input=prompt.format_messages(context=contexts, question=question)

最后将input喂给大模型 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值