config.py 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. import os
  2. class BaseConfig(object):
  3. # 讯飞asr配置
  4. XFASR_HOST = 'https://raasr.xfyun.cn/v2/api'
  5. XF_API = {
  6. 'upload': '/upload',
  7. 'get_result': '/getResult'
  8. }
  9. XFASR_CONFIG = {
  10. 'appid': 'b11df2ff',
  11. 'secret_key': '598f38c17bd361f1f473dcfc840d330a'
  12. }
  13. # gpt配置
  14. GPT_HOST = 'https://api.openai.com/v1/chat/completions'
  15. # GPT_OPENAI_API_KEY = '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'
  16. # GPT_OPENAI_API_KEY = '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'
  17. GPT_OPENAI_API_KEY = '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'
  18. GPT_URL = 'http://aigc.piaoquantv.com/aigc-server/aigc/content'
  19. RETRY_MAX_COUNT = 3
  20. # 代理地址
  21. PROXIES = {
  22. 'http': 'http://127.0.0.1:4780',
  23. 'https': 'http://127.0.0.1:4780'
  24. }
  25. # 飞书应用凭证
  26. FEISHU_TOKEN = {
  27. 'app_id': 'cli_a3667697a57b500e',
  28. 'app_secret': '5eMszgeNt21U56XnPjCykgmTfZUEEMnp'
  29. }
  30. # stop_words
  31. STOP_WORDS = ['啊', '嗯', '呗', '呢', '呐', '呀', '唉', '哎', '额', '呃', '哦', '呵']
  32. # video tags
  33. TAGS = ['舞蹈', '美食', '时尚', '旅行', '音乐', '运动', '影视', '搞笑', '科技', '综艺',
  34. '游戏', '情感', '健康', '人文', '社会', '热点', '财富', '生活']
  35. TAGS_NEW = ['资讯', '国际', '政治', '科技', '军事', '健康', '社会', '民生政策', '人文', '人物', '旅行', '生活',
  36. '美食', '综艺', '搞笑', '民俗文化', '安全', '休闲娱乐', '艺术', '情感']
  37. # GPT prompt
  38. format_json_array = '[{},{},{}]'
  39. GPT_PROMPT = {
  40. 'tags': {
  41. 'prompt1': f"""
  42. 请对如下文本进行分类。类别为其中的一个:【{' '.join(TAGS)}】。
  43. 以json格式返回,key为category与confidence,分别代表类别与分类置信度。给出top 3的分类结果。
  44. -----------------------------
  45. """,
  46. 'prompt2': f"""
  47. 请对如下文本进行:
  48. 1. 分类,类别为其中的一个:【{' '.join(TAGS)}】。如果无法有效分类,请返回“其他”。
  49. 2. 用20个字以内对文本内容进行概况。
  50. 3. 为文本取一个易于分享,吸引人要求的标题。
  51. 4. 列举三个关键词。
  52. 以json格式返回,key为category, confidence, summary, title, keywords。分别代表类别,分类置信度,概要,标题,关键词。
  53. -----------------------------
  54. """,
  55. 'prompt3': f"""
  56. 请对如下文本进行分类,不允许返回"其他"。
  57. 以json格式返回,key为categor与confidence, 分别代表类别与分类置信度。给出top 3的分类结果。
  58. -----------------------------
  59. """,
  60. 'prompt4': f"""请对如下文本进行分类。类别为其中的一个:【{' '.join(TAGS_NEW)}】。
  61. 以json array格式返回,key为category与confidence,分别代表类别与分类置信度。给出top 3的分类结果。
  62. -----------------------------
  63. """,
  64. 'prompt5': f"""请对如下文本进行分类。类别为其中的一个:【{' '.join(TAGS_NEW)}】。
  65. 以json array格式返回,{format_json_array},key为category与confidence,分别代表类别与分类置信度。给出top 3的分类结果。
  66. -----------------------------
  67. """,
  68. 'prompt6': f"""
  69. 请对如下文本进行:
  70. 1. 用20个字以内对文本内容进行概况。
  71. 2. 列举三个关键词。
  72. 仅以json格式返回,key为summary, keywords。分别代表概要,关键词。
  73. -----------------------------
  74. """,
  75. 'prompt7': f"""请根据以下的视频信息对其进行分类。类别为其中的一个:【{' '.join(TAGS_NEW)}】。
  76. 仅以json array格式返回,{format_json_array},key为category与confidence,分别代表类别与分类置信度。给出top 3的分类结果。
  77. -----------------------------
  78. """,
  79. },
  80. 'title': {
  81. 'prompt1': f"""
  82. 请对如下文本进行: 为文本取一个易于分享,吸引人要求的标题。要求在30个字以内。
  83. -----------------------------
  84. """,
  85. 'prompt2': f"""
  86. 我想让你充当爆款标题生成器,我会给你提供一段视频的讲解文本,你生成一个更吸引眼球的标题。
  87. 标题不要超过35个字。
  88. 标题要突出惊奇感,让老年人看到就想转发,语义要保持中立,不要向负面倾斜,不要涉及政治敏感话题。
  89. 如果原讲解文本中有地名,不要改变讲解文本中的地名。
  90. 如果原讲解文本是关于唱歌但是没有说明是哪首歌,你起的标题也不要说歌名。
  91. 如果原讲解文本中没有明确指出男女性别,你起的标题也不要说具体的性别。
  92. 如果原讲解文本中没有明确指出是谁干了这件事,你起的标题也不要说是谁干的。
  93. 如果原讲解文本中没有提及老年人,你起的标题也不要说老年人。
  94. 我的原讲解文本是:
  95. """
  96. }
  97. }
  98. def set_config():
  99. return BaseConfig()