当前位置:   article > 正文

Python与讯飞星火Spark API的智能创作:自媒体的未来_python可以用spark做自动化吗

python可以用spark做自动化吗

这段 Python 代码是一个自动化脚本,用于读取 Excel 文件中的数据,并使用 讯飞星火Spark API 来生成基于给定提示词的文本内容。生成的内容随后被保存为 Markdown 文件,这可以用于内容创作,特别是在自媒体领域。

  1. import SparkApi
  2. import pandas as pd
  3. import os
  4. #以下密钥信息从控制台获取
  5. appid = "" #填写控制台中获取的 APPID 信息
  6. api_secret = "" #填写控制台中获取的 APISecret 信息
  7. api_key ="" #填写控制台中获取的 APIKey 信息
  8. # 配置参数
  9. domain = "generalv3" # v3.0版本
  10. temperature = 0.5
  11. top_k = 4
  12. max_tokens = 8192 # 最大生成长度为8192
  13. # 云端环境的服务地址
  14. Spark_url = "wss://spark-api.xf-yun.com/v3.1/chat" # v3.0环境的地址
  15. text = []
  16. def getText(role, content):
  17. """添加消息到列表中"""
  18. text.append({"role": role, "content": content})
  19. return text
  20. def getLength(text):
  21. """计算消息列表的总长度"""
  22. return sum(len(content["content"]) for content in text)
  23. def checkLength(text):
  24. """确保消息列表总长度不超过8000字符"""
  25. while getLength(text) > 8000:
  26. del text[0]
  27. return text
  28. def callSparkApi(question):
  29. """调用 Spark API 并获取回答"""
  30. try:
  31. SparkApi.answer = ""
  32. SparkApi.main(appid, api_key, api_secret, Spark_url, domain, question)
  33. return SparkApi.answer
  34. except Exception as e:
  35. print(f"调用 Spark API 时出现错误: {e}")
  36. return None
  37. def readExcelAndGenerateOutput(file_path, sheet_name, prompt_column, title_column):
  38. """读取 Excel 文件,并对每行数据调用 Spark API,然后保存结果为 Markdown 文件"""
  39. try:
  40. df = pd.read_excel(file_path, sheet_name=sheet_name)
  41. except Exception as e:
  42. print(f"读取 Excel 文件时出现错误: {e}")
  43. return
  44. for index, row in df.iterrows():
  45. try:
  46. prompt = row[prompt_column]
  47. title = row[title_column]
  48. text.clear()
  49. question = checkLength(getText("user", prompt))
  50. answer = callSparkApi(question)
  51. getText("assistant", answer)
  52. if answer:
  53. # 创建文件名和路径
  54. file_name = f'{title}.md'
  55. output_path = os.path.join(r'D:\wenjian\obsidian\笔记\自媒体\AI生成', file_name)
  56. # 保存到 Markdown 文件
  57. with open(output_path, 'w', encoding='utf-8') as file:
  58. for item in text:
  59. file.write(item["role"] + ": " + item["content"] + "\n\n")
  60. print(f'结果已保存到文件:{output_path}')
  61. except Exception as e:
  62. print(f"处理 Excel 行数据时出现错误: {e}")
  63. if __name__ == '__main__':
  64. excel_file_path = r"D:\wenjian\onedrive\Desktop\自媒体.xlsx"
  65. readExcelAndGenerateOutput(excel_file_path, '古诗词', '提示词', '名称')

代码解析

  1. 引入所需模块: SparkApi用于调用Spark API进行文本生成。 pandas用于读取Excel文件。 os用于文件路径和文件操作。
  2. 设置API密钥信息: appid, api_secret, api_key从控制台获取并填入。
  3. 定义全局变量和函数: text列表存储对话历史。 getText添加对话到列表。 getLength计算对话列表总长度。 checkLength保持对话长度在限制内。
  4. API调用: callSparkApi函数利用SparkApi模块调用API并获取回答。
  5. 处理Excel数据并生成文件: readExcelAndGenerateOutput函数读取Excel中的提示词和标题,生成内容,并将其保存为Markdown文件。

代码的实际应用

此脚本可用于各种需要大量文本内容的场景:

  • 自媒体运营: 自动生成博客文章、社交媒体帖子。
  • 内容创作: 利用AI生成故事、文章等。
  • 教育资源: 自动生成教育材料和教案。

应用场景

  • 自动化营销:为广告和营销材料快速生成文案。
  • 知识库构建:创建知识库和帮助文档。

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

闽ICP备14008679号