当前位置:   article > 正文

langchain+阿里云通义千问大模型判断用户输入语言的情绪_通义千问使用qdrant

通义千问使用qdrant

怎么让自己的AI小助手可以判断用户当前的情绪呢

根据情绪的判断去定义一些固定的回复模板

以下是实现过程: 

  1. ### 环境要求 python:3.11.4
  2. ### langchain_core==0.1.28
  3. ### langchain_community==0.0.25
  4. ### langchain==0.1.10
  5. ### qdrant_client == 1.7.1
  6. ### dashscope = 1.17.1
  1. from langchain_community.llms import Tongyi
  2. from langchain.agents import (
  3. load_tools,
  4. initialize_agent,
  5. AgentType,
  6. )
  7. from langchain.memory import ConversationBufferMemory
  8. from langchain_core.prompts import ChatPromptTemplate,MessagesPlaceholder
  9. from langchain.schema import StrOutputParser
  10. import os
  11. #通义千问的api-sk
  12. os.environ["DASHSCOPE_API_KEY"] = "sk-xxxxxxxxxx"
  13. def qingxu_chain(query:str):
  14. prompt = """根据用户的输入判断用户的情绪,回应的规则如下:
  15. 1. 如果用户输入的内容偏向于负面情绪,只返回"depressed",不要有其他内容,否则将受到惩罚。
  16. 2. 如果用户输入的内容偏向于正面情绪,只返回"friendly",不要有其他内容,否则将受到惩罚。
  17. 3. 如果用户输入的内容偏向于中性情绪,只返回"default",不要有其他内容,否则将受到惩罚。
  18. 4. 如果用户输入的内容包含辱骂或者不礼貌词句,只返回"angry",不要有其他内容,否则将受到惩罚。
  19. 5. 如果用户输入的内容比较兴奋,只返回”upbeat",不要有其他内容,否则将受到惩罚。
  20. 6. 如果用户输入的内容比较悲伤,只返回“depressed",不要有其他内容,否则将受到惩罚。
  21. 7. 如果用户输入的内容比较开心,只返回"cheerful",不要有其他内容,否则将受到惩罚。
  22. 8. 如果用户输入的内容比较尴尬和窘迫,只返回“embarrassed",不要有其他内容,否则将受到惩罚。
  23. 8. 只返回英文,不允许有换行符等其他内容,否则会受到惩罚。
  24. 用户输入的内容是:{query}"""
  25. chain = ChatPromptTemplate.from_template(prompt) | Tongyi(temperature=0) | StrOutputParser()
  26. result = chain.invoke({"query":query})
  27. # "default" = result
  28. print("情绪判断结果:",result)
  29. return result
  30. qingxu_chain("今天出门衣服穿反了,到了公司才发现,所有员工都笑话我!")
  31. #情绪判断结果: embarrassed
  32. qingxu_chain("今天公司发奖金了!!!")
  33. #情绪判断结果: upbeat

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/681229
推荐阅读
相关标签
  

闽ICP备14008679号