gpt_tag.py 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280
  1. import time
  2. import requests
  3. import traceback
  4. from config import set_config
  5. from log import Log
  6. config_ = set_config()
  7. log_ = Log()
  8. def get_tag(text):
  9. retry = 1
  10. while retry < 3:
  11. try:
  12. log_.info(f"retry = {retry}")
  13. # tags = ['舞蹈', '美食', '时尚', '旅行', '音乐', '运动', '影视', '搞笑', '科技', '综艺', '游戏', '情感', '健康', '人文', '社会', '热点', '财富', '生活']
  14. # # tags = ["惊奇","有趣","有用","同感"]
  15. # prompt = f"""请对如下文本进行分类。类别为其中的一个:【{' '.join(tags)}】。以json格式返回,key为category与confidence,分别代表类别与分类置信度。给出top 3的分类结果。
  16. # -----------------------------
  17. # {text}"""
  18. # prompt = f"""请对如下文本进行:1. 分类,类别为其中的一个:【{' '.join(tags)}】。如果无法有效分类,请返回“其他”。2. 用20个字以内对文本内容进行概况。3. 为文本取一个易于分享,吸引人要求的标题。4. 列举三个关键词。
  19. # 以json格式返回,key为category, confidence, summery, title, keywords。分别代表类别,分类置信度,概要,标题,关键词。
  20. # -----------------------------
  21. # {text}"""
  22. # prompt = f"""
  23. # 请对如下文本进行以下4个操作:
  24. # 1. 分类,请给出top 3的分类结果与分类置信度,如果无法有效分类,请返回“其他”。以json array格式返回,key为category与confidence,分别代表类别与分类置信度。
  25. # 2. 用20个字以内对文本内容进行概况。
  26. # 3. 为文本取一个易于分享,吸引人要求的标题。
  27. # 4. 列举三个关键词。
  28. # 将结果以json格式返回,key为category_res, summery, title, keywords,分别代表分类,概要,标题,关键词。
  29. # -----------------------------
  30. # {text}
  31. # """
  32. # prompt = f"""
  33. # 请对如下文本进行: 为文本取一个易于分享,吸引人要求的标题。要求在30个字以内。
  34. # -----------------------------
  35. # {text}
  36. # """
  37. # prompt = f"""
  38. # 我想让你充当爆款标题生成器,我会给你提供一段视频的讲解文本,你生成一个更吸引眼球的标题。
  39. # 标题要突出惊奇感,让老年人看到就想转发,语义要保持中立,不要向负面倾斜,不要涉及政治敏感话题。
  40. # 如果原讲解文本中有地名,不要改变讲解文本中的地名。
  41. # 如果原讲解文本是关于唱歌但是没有说明是哪首歌,你起的标题也不要说歌名。
  42. # 如果原讲解文本中没有明确指出男女性别,你起的标题也不要说具体的性别。
  43. # 如果原讲解文本中没有明确指出是谁干了这件事,你起的标题也不要说是谁干的。
  44. # 如果原讲解文本中没有提及老年人,你起的标题也不要说老年人。
  45. # 我的原讲解文本是:
  46. # {text}
  47. # """
  48. # prompt = f"""
  49. # 我想让你充当爆款标题生成器,我会给你提供一段视频的讲解文本,你生成一个更吸引眼球,并且字数在35个字以内的标题。
  50. # 标题要突出惊奇感,让老年人看到就想转发,语义要保持中立,不要向负面倾斜,不要涉及政治敏感话题。
  51. # 如果原讲解文本中有地名,不要改变讲解文本中的地名。
  52. # 如果原讲解文本是关于唱歌但是没有说明是哪首歌,你起的标题也不要说歌名。
  53. # 如果原讲解文本中没有明确指出男女性别,你起的标题也不要说具体的性别。
  54. # 如果原讲解文本中没有明确指出是谁干了这件事,你起的标题也不要说是谁干的。
  55. # 如果原讲解文本中没有提及老年人,你起的标题也不要说老年人。
  56. # 我的原讲解文本是:
  57. # {text}
  58. # """
  59. prompt = f"""
  60. 我想让你充当爆款标题生成器,我会给你提供一段视频的讲解文本,你生成一个更吸引眼球的标题。
  61. 标题不要超过35个字。
  62. 标题要突出惊奇感,让老年人看到就想转发,语义要保持中立,不要向负面倾斜,不要涉及政治敏感话题。
  63. 如果原讲解文本中有地名,不要改变讲解文本中的地名。
  64. 如果原讲解文本是关于唱歌但是没有说明是哪首歌,你起的标题也不要说歌名。
  65. 如果原讲解文本中没有明确指出男女性别,你起的标题也不要说具体的性别。
  66. 如果原讲解文本中没有明确指出是谁干了这件事,你起的标题也不要说是谁干的。
  67. 如果原讲解文本中没有提及老年人,你起的标题也不要说老年人。
  68. 我的原讲解文本是:
  69. {text}
  70. """
  71. headers = {
  72. 'Content-Type': 'application/json',
  73. # 'Authorization': f'Bearer {os.environ["OPENAI_API_KEY"]}',
  74. 'Authorization': f'Bearer {config_.GPT_OPENAI_API_KEY}',
  75. }
  76. proxies = config_.PROXIES
  77. json_data = {
  78. 'model': 'gpt-3.5-turbo',
  79. 'messages': [
  80. {
  81. 'role': 'user',
  82. 'content': f'{prompt}',
  83. },
  84. ],
  85. }
  86. response = requests.post(url=config_.GPT_HOST, headers=headers, json=json_data, proxies=proxies)
  87. print(response.json())
  88. print(response.json()['choices'][0]['message']['content'])
  89. print('\n')
  90. result_content = response.json()['choices'][0]['message']['content']
  91. return result_content
  92. except Exception as e:
  93. print(e)
  94. log_.error(traceback.format_exc())
  95. retry += 1
  96. time.sleep(60)
  97. continue
  98. if __name__ == '__main__':
  99. text = """请你用15分钟一口气说完中国史,
  100. 计时开始。
  101. 中国历史上第一个朝代是夏朝夏王,大禹联合了各部落,建立了国家的雏形,大禹的儿子启是夏朝的第一任国君,
  102. 也就是说雨是筹备者,岂是开国者,下棋死后儿子斯泰康世袭皇位,
  103. 泰康爱好打猎,经常几个月不回家,就导致了泰康失国打猎回来的路上被后羿给赶走了。
  104. 后裔篡下朝八年,后裔手下有个狠人叫做韩卓,
  105. 在后裔60岁时又干掉了后裔,
  106. 在位60年后被大禹的后代少康率军杀回来干掉了,
  107. 并开启了中国历史上第一个中兴时代,绍康中兴夏朝平稳发展,直到夏朝最后一个君主夏杰,
  108. 这是个暴君引起了民愤,被商部落的首领商汤所灭。
  109. 商汤建立商朝,商汤有个著名的军师叫伊尹,也就是道德经中说
  110. 治大国若烹小鲜的那位神人。
  111. 500多年后,商朝最后一任君主就是历史上有名的暴君纣王了。
  112. 纣王被周部落的一个叫姬发的人,率军在牧野之战中给灭了,纣王自焚于鹿台,也就是著名的武王伐纣,
  113. 姬发建立了周朝,
  114. 周朝是中国历史上最长的朝代,790年的国运,
  115. 武王姬发有个非常出名的弟弟是孔子的偶像,叫做鸡蛋,也就是大名鼎鼎的周公。
  116. 周公创立了宗法制平定三间之乱,辅佐少年天子。
  117. 周朝传了好多代到了周幽王,
  118. 周幽王为博妖姬包四一笑,发生了著名的烽火戏诸侯,这还不够,周幽王还废了皇后和太子,要立包四的儿子为太子,老丈人直接就火了。
  119. 于是联合犬戎直接攻破吴京,也就是西安杀了周幽王,
  120. 都城西安也被犬戎一把火给烧为灰烬,然后周平王即位,宫殿被烧也不修了,直接就迁都了。
  121. 在各位诸侯的帮助下,把首都从西安搬到了洛阳,
  122. 这就是著名的平王东迁,
  123. 周天子要钱没钱,要权没权,地位从此一落千丈。
  124. 平王东迁以前叫做西周平,王东迁以后叫做东周,而东周又分为两个时期,前半段叫春秋,后半段叫战国,
  125. 春秋时期出了五个霸主,齐桓公、晋文公、宋襄公、秦穆公和楚庄王,
  126. 时称春秋五霸。
  127. 春秋末期发生了两件大事,也是春秋和战国的分界点三家分晋和田氏代旗。
  128. 战国时期的战国七雄、秦、楚、齐、燕、赵、魏、韩在经过一顿火拼之后,最终秦国突出重围灭了六国。
  129. 秦始皇嬴政一统天下,建立秦朝,迎来了中国历史上第一次民族融合的高峰。
  130. 秦始皇死后,由于之前的统治很残暴,秦二世屁股还没坐热,就爆发了中国历史上第一次大规模的农民起义,陈胜、吴广的大泽乡起义,
  131. 虽然以失败告终,但是星星之火已成燎原之势。
  132. 刘邦项羽合作灭了秦国后,两大势力又开始了楚汉争霸,最终该下一战项羽四面楚歌,全军覆没。
  133. 刘邦建立了汉朝,史称西汉,到了西汉第七位皇帝汉武帝刘彻开创了汉武盛世,
  134. 维西汉最鼎盛的时期,
  135. 张骞出使西域也是这段时间的事儿。
  136. 西汉存在了200多年后被权臣王莽所篡改,国号为新,史称新莽。
  137. 十几年后老刘家的子孙刘秀杀回来,推翻了新朝,重建大汉王朝,
  138. 为汉光武帝,史称东汉。
  139. 东汉统治了将近200年后,太监的权力达到极致,其中12个太监被称为时常事,
  140. 爆发了十常氏之乱,祸乱朝政,
  141. 进而导致军阀董卓带兵入京,爆发了董卓之乱。
  142. 各路诸侯一看形势不对,呀带兵就撤了,跑回自己的地盘发展。
  143. 各个军阀再经过发展,最终通过三大战役逐渐形成三个国家。
  144. 魏蜀、吴
  145. 三国平衡发展了40年后,魏国灭了蜀国,
  146. 可是没几年魏国权臣司马懿的孙子司马炎就篡位了,
  147. 把国号魏改成了晋,史称西晋,紧接着西晋就灭了吴国,统一全国西晋的第二位皇帝,就是历史上著名的白痴皇帝司马衷,
  148. 他有个巨丑的老婆叫贾南风,就是这个贾南风成为了西晋八王之乱的导火索。
  149. 这时候北方游牧民族趁乱崛起,并开始入侵西进,也就是五胡乱华,
  150. 五湖中最大的是匈奴
  151. 首领刘渊建立汉赵后,他的儿子刘聪几年之内就灭了西晋,
  152. 西晋皇族司马睿跑到了南京重建晋朝,史称东晋,这就是历史上的衣冠南渡。
  153. 而北方这些胡人逐渐形成了16个割据政权,史称五胡十六国和南方的东晋政权对峙。
  154. 这时候五湖中的意志崛起了,就是底租富家。
  155. 福建建立了前秦政权,一统北方自称大秦天王,
  156. 然后福建就不老实了,就开始琢磨东晋了,率30万大军南下,在淝水之战中被东晋、谢贤、谢安、谢石等人率8万人直接摁倒在了肥水。
  157. 北方各势力又脱离了前秦的统治,各自独立再次混乱。
  158. 其中又有一股势力崛起了,就是鲜卑族的拓跋家族见过魏始昌北魏。
  159. 几十年后北魏统一了北方,而东晋政权也被东晋权臣刘裕所篡,
  160. 建国为宋,史称南朝宋,东晋灭亡,南北朝开始。
  161. 南朝依次为宋齐良辰4个朝代,共计169年。
  162. 注意这是顺序出现的4个朝代,
  163. 而北朝北魏分裂为西魏和东魏各自用力自己的皇帝互相各种不服。
  164. 后来东魏、西魏又都各自干掉了自己的皇帝,东魏变成北齐,
  165. 西魏变成北周。
  166. 20多年后,北周皇帝周武帝宇文邕率领亲家杨坚灭了北齐统一北方。
  167. 北周武帝死后几年之内,杨坚就废了自己的外孙篡位称帝,建国为隋,
  168. 7年后又灭了南朝的陈朝统一全国。
  169. 隋朝第二位皇帝隋炀帝杨广是个演员,通过在父亲杨坚母亲独孤迦罗面前的表演,让太子杨勇被废,并顺利成为了太子,并继承了王位。
  170. 在位14年建造了东都洛阳、隋朝大运河,
  171. 三下扬州三争高沟里严重削弱了国力,民不聊生,爆发了农民起义。
  172. 最终隋朝被隋炀帝杨广的表哥李渊建立的唐朝所灭,
  173. 李渊的这几个儿子为了皇位又干起来了,
  174. 最终李世民在玄武门之变中射死了,太子李建成,又让老爹李渊禅让皇位,与他成为唐太宗,并开启了著名的贞观之治。
  175. 这时候李世民身边出来一位姑娘叫武兆,也就是后来的武则天,
  176. 反正李世民是没看上他,武昭12年的地位一直没有提升,
  177. 吴钊一看实在是不能在李世民身上下手了,
  178. 再不努力就老了。
  179. 就在李世民的儿子李治身上打起了主意,成功成为李治的皇后。
  180. 最终武兆废了儿子李显自己称帝,改唐为周示好则天皇后。
  181. 15年后,武则天的儿子李显在弟弟李旦和妹妹太平公主的共同主持下,发动了神龙政变,
  182. 推翻了老娘武则天。
  183. 李显第二次登机,
  184. 结果李显的老婆韦皇后竟然要成为第二个武则天,
  185. 并且毒死了李显,而且要谋害李诞。
  186. 李诞在儿子李隆基和妹妹太平公主的协助下,发动唐隆政变,灭了韦皇后集团李诞登基。
  187. 两年后禅让儿子李隆基,
  188. 李隆基开创了开元盛世,为唐朝的极盛时期,李隆基志得意满开始不务正业了。
  189. 在娶了儿子李瑁的老婆杨玉环后,更加沉溺酒色,
  190. 爆发了安史之乱,唐朝国力大衰,
  191. 最终唐朝权臣朱温通过禅让的形式夺取了唐哀帝的地位,建国为梁,史称后梁。
  192. 唐朝灭亡5代10国开始共72年,中原地区顺序存在了5个朝代,
  193. 及梁、唐、晋、汉、周除中原5代以外,同时还存在10个独立的小国家及十国。
  194. 5代与10国处于同一时期,区别就是5代是一个一个存在的,而10国是同时存在的。
  195. 5代中最后一个朝代,后周大将军赵匡胤发动陈桥兵变,黄袍加身,篡后周政权,
  196. 建立北宋至此5代10国结束。
  197. 赵匡胤把这十国零零碎碎的灭了以后,基本统一了全国,形成了和契丹人建立的辽国对峙的局面。
  198. 在北宋和契丹人建立的辽国对峙的时候,辽国后方的女真族建立的金国崛起了,
  199. 辽国正好夹在北宋和金国之间,于是北宋就联合金国把辽国给灭了,
  200. 但是金国带着余威直接就灭了北宋,
  201. 一个北宋的皇子就跑到了现在的河南商丘,建立了南宋南宋在岳飞带领的岳家军的铁骑下抵抗金国,
  202. 但是岳飞最终被宋高宗赵构和秦桧以莫须有的罪名所杀。
  203. 这个时候北方蒙古大草原又崛起了一股势力,就是后来的元朝的建立者蒙古国,
  204. 蒙古国直接联合南宋灭了金国。
  205. 1271年忽必烈在现在的北京建立元朝,攻打南宋两年后,南宋丞相陆秀夫背着年仅8岁的小皇帝跳海自尽,
  206. 贵族800人和10万军民跳海殉国,南宋灭亡。
  207. 元朝统治者变本加厉的向汉人收取各种名目繁多的赋税,民族压迫严重,
  208. 人民揭竿而起。
  209. 元朝统治了98年后,被一个叫朱重八的和尚,也就是朱元璋在大将徐达常遇春的协助下灭了元朝。
  210. 明朝建立明太祖朱元璋通过胡兰之玉为皇太孙朱允文铺平了道路,
  211. 没想到朱允文被自己的叔叔朱棣在黑袍妖僧、姚广孝的寸头下给灭了。
  212. 朱棣把都城由南京迁到了自己的根据地,北京。
  213. 明朝经历了明末农民起义爆发,
  214. 关外爱新觉罗努尔哈赤建立的后金政权趁势崛起,国家处于内忧外患的境地。
  215. 1644年李自成起义军攻克北京建国大顺,崇祯自缢于梅山,
  216. 当天下很多人认为李自成的大顺政权将是下一个朝代之时,
  217. 结果山海关一战以后,李自成败于吴三桂与清军联手,大顺政权也随着他的死亡而灭亡,
  218. 大顺没有彻底的消灭南明朝廷统一中国,所以只能是明朝与清朝之间的过渡政权。
  219. 清朝入关后,摄政王多尔衮颁布剃发令,并对拒不执行的汉人进行了大屠杀,
  220. 因剃发令而被满清杀死的汉人不下几十万。
  221. 康熙、雍正、乾隆盛世是中国古代封建王朝的最后一个盛世。
  222. 清朝中后期,清朝以天朝上邦自居,闭关锁国导致外国贸易逆差,
  223. 发生了第一次和第二次鸦片战争,清朝彻底沦为半殖民地半封建社会。
  224. 1894年中日甲午战争清朝惨败,
  225. 其中日军对旅顺进行了惨绝人寰的大屠杀,
  226. 这也让其他各国对清朝这块大蛋糕虎视眈眈。
  227. 1900年八国联军入侵慈禧,光绪跑路,李鸿章代表清朝签订了赔款数目最大,主权丧失最严重的不平等条约,
  228. 辛丑条约。
  229. 1911年到1912年爆发了成功推翻清朝统治的联唱革命运动辛亥革命?
  230. 1912年孙文以绝对优势当选为中华民国第一任临时大总统,也正式宣告中华民国的成立。
  231. 孙中山以清朝内阁大臣袁世凯支持共和体制为要求,辞去了临时大总统让位给袁世凯,
  232. 袁世凯迫使宣统帝溥仪退位,清朝灭亡。
  233. 袁世凯成为总统后妄图称帝,并于1915年登基自称皇帝,
  234. 引发了护国运动。
  235. 南方各省纷纷宣布独立并出兵讨伐袁世凯,袁世凯迫于内外压力,不得不在做了83天皇帝后取消了帝制,
  236. 随后病死于尿毒症。
  237. 袁世凯死后手下北洋军阀三大派系失去了控制,开始混战。
  238. 1931年918事变到1945年二战后,日本宣布无条件投降,
  239. 中国人民14年的抗日战争以胜利告终。
  240. 1948年到1949年辽沈战役、淮海战役、平津战役三大战役后,
  241. 蒋介石飞往台北。
  242. 1949年10月1日中华人民共和国成立,北平改名北京。
  243. 我我弟弟。
  244. 呀"""
  245. # text = """艾叶加上酒全身疼痛,不再有比止疼药都管用,大家好,我是中医马大夫,
  246. # 艾叶加上酒疼痛不再有春天到了,
  247. # 颈椎病、肩周炎、腰疼、膝关节炎,还有老寒腿,
  248. # 都会时不时发作,
  249. # 很多的人都会随意的吃点止疼药,
  250. # 其实很多人都不懂,一吃就好的止疼药副作用是非常大的。
  251. # 这里告诉大家一个超级简单的方法,
  252. # 艾叶加上酒专治颈椎病、肩周炎、腰腿疼痛,
  253. # 老寒腿,
  254. # 具体怎么做,呢今天这个视频呢给大家讲清楚,
  255. # 建议大家点赞收藏并转发,让更多的人受益。
  256. # 我们先取艾叶60克,
  257. # 生姜是5颗,
  258. # 大葱2~3颗,
  259. # 白酒适量将三味药捣烂,用纱布包好,
  260. # 浇上热酒,
  261. # 扶到我们疼痛处,
  262. # 一般患者热敷上1~2次就不会再疼了,
  263. # 简单有效,
  264. # 比止疼药都管用,适用于风寒湿引起的疼痛都有效果。
  265. # 关注我每天晚上直播讲解健康知识,再见。
  266. # 家人们这么有用的健康知识,看完记得转发收藏起来,身体是最重要的。
  267. # 多少朋友因为被病痛折磨,很多人随意吃药,这个中医大师的方法
  268. # 赶紧分享给大家,这个方法很简单,还有很多朋友不知道赶紧转发到各大群里,
  269. # 让老友们都知道,说不定就用上了,转发到群里和群友共享,他们会感激您的。"""
  270. print(len(text))
  271. get_tag(text=text)