聊天机器人

收集窗帘相关的数据

可以用gpt生成,也可以用爬虫

图形化界面 gradio

向量数据库 faiss

python代码

python 复制代码
import gradio as gr
import random
import time

from typing import List

from langchain.embeddings.openai import OpenAIEmbeddings
from langchain.vectorstores import FAISS
from langchain.chains import RetrievalQA
from langchain.chat_models import ChatOpenAI


def initialize_sales_bot(vector_store_dir: str="real_estates_sale"):
    db = FAISS.load_local(vector_store_dir, OpenAIEmbeddings())
    llm = ChatOpenAI(model_name="gpt-3.5-turbo", temperature=0)
    
    global SALES_BOT    
    SALES_BOT = RetrievalQA.from_chain_type(llm,
                                           retriever=db.as_retriever(search_type="similarity_score_threshold",
                                                                     search_kwargs={"score_threshold": 0.8}))
    # 返回向量数据库的检索结果
    SALES_BOT.return_source_documents = True

    return SALES_BOT

def sales_chat(message, history):
    print(f"[message]{message}")
    print(f"[history]{history}")
    # TODO: 从命令行参数中获取
    enable_chat = True

    ans = SALES_BOT({"query": message})
    # 如果检索出结果,或者开了大模型聊天模式
    # 返回 RetrievalQA combine_documents_chain 整合的结果
    if ans["source_documents"] or enable_chat:
        print(f"[result]{ans['result']}")
        print(f"[source_documents]{ans['source_documents']}")
        return ans["result"]
    # 否则输出套路话术
    else:
        return "这个问题我要问问领导"
    

def launch_gradio():
    demo = gr.ChatInterface(
        fn=sales_chat,
        title="窗帘销售",
        # retry_btn=None,
        # undo_btn=None,
        chatbot=gr.Chatbot(height=600),
    )

    demo.launch()

if __name__ == "__main__":
    # 初始化房产销售机器人
    initialize_sales_bot()
    # 启动 Gradio 服务
    launch_gradio()

最中结果如下:

相关推荐
SLAM必须dunk1 小时前
unitree_rl_gym-main 代码解读1_URDF
机器人
沫儿笙2 小时前
kuka库卡弧焊接机器人保护气节气装置
人工智能·物联网·机器人
z***56563 小时前
【AimRT】现代机器人通信中间件 AimRT
中间件·机器人
Mr.Winter`5 小时前
深度强化学习 | 基于PPO算法的移动机器人路径跟踪(附Pytorch实现)
人工智能·pytorch·深度学习·机器学习·机器人·自动驾驶·ros
点云SLAM6 小时前
四元数 (Quaternion)微分-单位四元数 q(t) 的导数详细推导(10)
算法·计算机视觉·机器人·slam·imu·四元数·单位四元数求导
boligongzhu21 小时前
ubuntu20.04搭建YOLOv11 GPU运行环境
linux·yolo·ubuntu·机器人
self-motivation1 天前
征机器人领域主流模型量化,评测,优化,部署工具model_optimizer的开源合作开发
yolo·机器人·量化·foundationpose·pi0.5
全栈视界师1 天前
《机器人实践开发②:Foxglove 嵌入式移植 + CMake 集成》
c++·机器人·数据可视化
机器觉醒时代1 天前
星动纪元 | 清华孵化的人形机器人先锋,以「具身大脑+本体+灵巧手」定义通用智能未来
人工智能·机器人·人形机器人·灵巧手
冰糖小新新1 天前
基于CanMV K230的工地巡检机器人
人工智能·信息可视化·机器人