Um chatbot WeChat baseado em fastapi + langchain + itchat, inspirado no projeto chatgpt-on-wechat
Sua estrela é o maior incentivo para mim?
Observação
Este projeto é apenas para aprendizagem e comunicação pessoal. Os usuários devem cumprir os termos de uso da OpenAI e as **leis e regulamentos chineses** e não podem usá-lo para fins ilegais.
De acordo com os requisitos das "Medidas Provisórias para a Gestão de Serviços de Inteligência Artificial Gerativa", não forneça quaisquer serviços de inteligência artificial generativa não registrados ao público na China.
Quando executado no modo de assistente padrão, várias ferramentas serão configuradas, e o LLM seleciona automaticamente as ferramentas apropriadas para chamar, como chamar o mecanismo de busca DuCKDuckGo, resumindo os resultados da pesquisa e retornando-os ao usuário.
Você precisa fornecer um conjunto de documentos e então, com base na pergunta do usuário, retornar os trechos de documentos mais relevantes.
O projeto de preparação de conta OpenAI usa a interface OpenAI por padrão. Você precisa ir para a página de registro OpenAI para criar uma conta. Depois de criar a conta, vá para a página de gerenciamento de API para criar uma chave de API e salvá-la. acesso à rede e vinculação de pagamento com cartão de crédito.
Adicionar chave de API às variáveis de ambiente
export OPENAI_API_KEY= " sk-xxxxxxxxxxxxxxxxxxxxxx "
Instale o Python O código é desenvolvido e testado através do Python3.10. Você precisa instalar o python 3.10. Após o download, clique na próxima etapa de instalação.
redis é usado para armazenar registros de bate-papo do usuário WeChat
docker run -d -p 6379:6379 -p 8001:8001 redis/redis-stack:latest
poetry install
ou
pip install -r requirements.txt
cp config/.env.example config/.env
uvicorn src.main:app
Configurar no arquivo config/.env
# openai 模型
OPENAI_MODEL= " gpt-3.5-turbo-1106 "
# openai api key
OPENAI_API_KEY= " your-openai-api-key "
# 模型 temperature
AI_TEMPERATURE=0.7
# 模型系统角色提示词
AI_SYSTEM_ROLE_PROMPT= "系统: "
# 聊天记录保存最大长度
CHAT_MAX_MESSAGE_HISTORY_LENGTH=10
# 触发聊天记录总结的阈值
CHAT_MESSAGE_HISTORY_SUMMARY_THRESHOLD=5
# 微信是否开启热重载
WECHAT_HOT_RELOAD=False
# 微信用户数据保存路径
WECHAT_USER_DATA_STORAGE_PATH= " wechat.pkl "