主页 > 人工智能  > 

17.LangChain实战项目2——易速鲜花宣传文案批量生成并导出

17.LangChain实战项目2——易速鲜花宣传文案批量生成并导出
初始化 # 设置OpenAI API Key import os from dotenv import load_dotenv load_dotenv() # 导入LangChain中的提示模板 from langchain.prompts import PromptTemplate # 创建原始模板 template = """您是一位专业的鲜花店文案撰写员。\n 对于售价为 {price} 元的 {flower_name} ,您能提供一个吸引人的简短描述吗? {format_instructions} """

定义了一个大模型的原始模板

定义输出模板拿到格式提示 # 导入结构化输出解析器和ResponseSchema from langchain.output_parsers import StructuredOutputParser, ResponseSchema # 定义我们想要接收的响应模式 response_schemas = [ ResponseSchema(name="description", description="鲜花的描述文案"), ResponseSchema(name="reason", description="问什么要这样写这个文案") ] # 创建输出解析器 output_parser = StructuredOutputParser.from_response_schemas(response_schemas) # 获取格式指示 format_instructions = output_parser.get_format_instructions() print(format_instructions) 初始化llm # 根据原始模板创建LangChain提示模板 prompt = PromptTemplate.from_template(template, partial_variables={"format_instructions": format_instructions}) # 创建模型实例 from langchain_openai import ChatOpenAI ai_model = os.getenv("OPENAI_MODEL") model = ChatOpenAI(model_name=ai_model) # 多种花的列表 flowers = ["玫瑰", "百合", "康乃馨"] prices = ["50", "30", "20"] 调用大模型解析结果 # 创建一个空的DataFrame用于存储结果 import pandas as pd df = pd.DataFrame(columns=["flower", "price", "description", "reason"]) # 生成多种花的文案 for flower, price in zip(flowers, prices): # 输入提示 input = prompt.format(flower_name=flower, price=price) # 得到模型的输出 output = model.invoke(input) # 解析模型的输出(这是一个字典结构) print(output.content) parsed_output = output_parser.parse(output.content) # 在解析后的输出中添加“flower”和“price” parsed_output['flower'] = flower parsed_output['price'] = price # 将解析后的输出添加到DataFrame中 df.loc[len(df)] = parsed_output # 打印字典 print(df.to_dict(orient='records')) # 保存DataFrame到CSV文件 df.to_csv("flowers_with_descriptions.csv", index=False)

标签:

17.LangChain实战项目2——易速鲜花宣传文案批量生成并导出由讯客互联人工智能栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“17.LangChain实战项目2——易速鲜花宣传文案批量生成并导出