config.example.yml 5.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. # 应用的日志级别,info or debug
  2. log_level: "info"
  3. # openai api_key
  4. api_key: "xxxxxxxxx"
  5. # 运行模式,http 或者 stream ,当前默认为http,等stream全面开放之后,这个模式将会是默认的启动模式
  6. run_mode: "http"
  7. # 如果你使用官方的接口地址 https://api.openai.com,则留空即可,如果你想指定请求url的地址,可通过这个参数进行配置,注意需要带上 http 协议
  8. base_url: ""
  9. # 指定模型,默认为 gpt-3.5-turbo , 可选参数有: "gpt-4-0314", "gpt-4", "gpt-3.5-turbo-0301", "gpt-3.5-turbo",如果使用gpt-4,请确认自己是否有接口调用白名单
  10. model: "gpt-3.5-turbo"
  11. # 会话超时时间,默认600秒,在会话时间内所有发送给机器人的信息会作为上下文
  12. session_timeout: 600
  13. # 指定请求时使用的代理,如果为空,则不使用代理,注意需要带上 http 协议 或 socks5 协议
  14. http_proxy: ""
  15. # 指定默认的对话模式,可根据实际需求进行自定义,如果不设置,默认为单聊,即无上下文关联的对话模式
  16. default_mode: "单聊"
  17. # 单人单日请求次数上限,默认为0,即不限制
  18. max_request: 0
  19. # 指定服务启动端口,默认为 8090,一般在二进制宿主机部署时,遇到端口冲突时使用
  20. port: "8090"
  21. # 指定服务的地址,就是当前服务可供外网访问的地址(或者直接理解为你配置在钉钉回调那里的地址),用于生成图片时给钉钉做渲染
  22. service_url: "http://xxxxxx"
  23. # 限定对话类型 0:不限 1:只能单聊 2:只能群聊
  24. chat_type: "0"
  25. # 哪些群组可以进行对话(仅在chat_type为0、2时有效),如果留空,则表示允许所有群组,如果要限制,则列表中写群ID(ConversationID)
  26. # 群ID,可在群组中 @机器人 群ID 来查看日志获取,例如日志会输出:[🙋 企业内部机器人 在『测试』群的ConversationID为: "cidrabcdefgh1234567890AAAAA"],获取后可填写该参数并重启程序
  27. allow_groups: []
  28. # 哪些普通群(使用outgoing机器人)可以进行对话,如果留空,则表示允许所有群组,如果要限制,则列表中写群ID(ConversationID)
  29. # 群ID,可在群组中 @机器人 群ID 来查看日志获取,例如日志会输出:[🙋 outgoing机器人 在『测试』群的ConversationID为: "cidrabcdefgh1234567890AAAAA"],获取后可填写该参数并重启程序
  30. # 如果不想支持outgoing机器人功能,这里可以随意设置一个内部群组,例如:cidrabcdefgh1234567890AAAAA;或随意一个字符串,例如:disabled
  31. # 建议该功能默认关闭:除非你必须要用到outgoing机器人
  32. allow_outgoing_groups: []
  33. # 以下 allow_users、deny_users、vip_users、admin_users 配置中填写的是用户的userid,outgoing机器人模式下不适用这些配置
  34. # 比如 ["1301691029702722","1301691029702733"],这个信息需要在钉钉管理后台的通讯录当中获取:https://oa.dingtalk.com/contacts.htm#/contacts
  35. # 哪些用户可以进行对话,如果留空,则表示允许所有用户,如果要限制,则列表中写用户的userid
  36. allow_users: []
  37. # 哪些用户不可以进行对话,如果留空,则表示允许所有用户(如allow_user有配置,需满足相应条件),如果要限制,则列表中写用户的userid,黑名单优先级高于白名单
  38. deny_users: []
  39. # 哪些用户可以进行无限对话,如果留空,则表示只允许管理员(如max_request配置为0,则允许所有人)
  40. # 如果要针对指定VIP用户放开限制(如max_request配置不为0),则列表中写用户的userid
  41. vip_users: []
  42. # 指定哪些人为此系统的管理员,如果留空,则表示没有人是管理员,如果要限制,则列表中写用户的userid
  43. # 注意:如果下边的app_secrets为空,以及使用outgoing的方式配置机器人,这两种情况下,都表示没有人是管理员
  44. admin_users: []
  45. # 钉钉机器人在应用信息中的AppSecret,为了校验回调的请求是否合法,如果留空,将会忽略校验,则该接口将会存在其他人也能随意调用的安全隐患,因此强烈建议配置正确的secret,如果你的服务对接给多个机器人,这里可以配置多个机器人的secret
  46. app_secrets: []
  47. # 敏感词,提问时触发,则不允许提问,回答的内容中触发,则以 🚫 代替
  48. sensitive_words: []
  49. # 帮助信息,放在配置文件,可供自定义
  50. help: "欢迎使用本工具\n\n你可以查看:[用户指南](https://github.com/eryajf/chatgpt-dingtalk/blob/main/docs/userGuide.md)\n\n这是一个[开源项目](https://github.com/eryajf/chatgpt-dingtalk/),觉得不错你可以来波素质三连."
  51. # Azure OpenAI 配置
  52. # 例如 curl https://forkway-test.openai.azure.com/openai/deployments/test-dev/chat/completions\?api-version\=2023-03-15-preview \
  53. # azure_api_version: "2023-03-15-preview"
  54. # azure_resource_name: "forkway-test"
  55. # azure_deployment_name: "test-dev"
  56. azure_on: false # 如果是true,则会走azure的openai接口
  57. azure_api_version: "2023-03-15-preview"
  58. azure_resource_name: "xxxx"
  59. azure_deployment_name: "xxxx"
  60. azure_openai_token: "xxxx"
  61. # 钉钉应用鉴权凭据信息,支持多个应用。通过请求时候鉴权来识别是来自哪个机器人应用的消息
  62. # 设置credentials 之后,即具备了访问钉钉平台绝大部分 OpenAPI 的能力;例如上传图片到钉钉平台,提升图片体验,结合 Stream 模式简化服务部署
  63. # client_id 对应钉钉平台 AppKey/SuiteKey;client_secret 对应 AppSecret/SuiteSecret
  64. #credentials:
  65. # -
  66. # client_id: "put-your-client-id-here"
  67. # client_secret: "put-your-client-secret-here"