当前位置: 首页 > article >正文

使用DeepSeek API生成Markdown文件

DeepSeek技术应用与代码实现
一、DeepSeek简介
DeepSeek是一款强大的人工智能写作助手,能够根据用户输入的提示(Prompt)快速生成高质量的文章。它不仅支持批量生成文章,还能通过智能分段、Markdown转HTML等功能优化内容。此外,DeepSeek还具备违禁词替换功能,确保生成的文章符合相关规定。
二、使用DeepSeek API生成Markdown文件
以下是一个使用Python脚本调用DeepSeek V3 API生成Markdown文件的示例。

  1. 环境准备
    确保安装以下Python库:
    bash复制
    pip install requests markdown
  2. 代码实现
    Python复制
    import os
    import requests
    import tkinter as tk
    from tkinter import messagebox, filedialog
    在这里插入图片描述

DeepSeek API的URL和API密钥

DEEPSEEK_API_URL = “https://api.deepseek.com/beta/completions”
API_KEY = “deepseek-api-key” # 替换为你的DeepSeek API密钥

def fetch_data_from_deepseek(prompt):
“”“调用DeepSeek API获取生成的内容”“”
headers = {
“Authorization”: f"Bearer {API_KEY}“,
“Content-Type”: “application/json”
}
payload = {
“model”: “deepseek-chat”, # 使用DeepSeek V3模型
“prompt”: prompt,
“max_tokens”: 8192 # 生成内容的长度限制
}
response = requests.post(DEEPSEEK_API_URL, headers=headers, json=payload)
if response.status_code == 200:
return response.json()[“choices”][0][“text”].strip()
else:
messagebox.showerror(“错误”, f"API调用失败: {response.status_code}”)
return None

def generate_markdown(content, filename):
“”“生成MarkDown文件”“”
with open(filename, ‘w’, encoding=‘utf-8’) as file:
file.write(content)

def process_prompts():
“”“处理输入的Prompt并生成MarkDown文件”“”
constant_part = constant_text.get(“1.0”, tk.END).strip()
variables = variable_text.get(“1.0”, tk.END).strip().splitlines()

if not constant_part or not variables:
    messagebox.showwarning("输入错误", "请填写常量部分和变量部分。")
    return

output_dir = filedialog.askdirectory(title="选择输出目录")
if not output_dir:
    return

for var in variables:
    if not var.strip():
        continue
    full_prompt = f"{constant_part.format(var=var)}"
    generated_content = fetch_data_from_deepseek(full_prompt)
    if generated_content:
        filename = os.path.join(output_dir, f"{var}.md")
        generate_markdown(generated_content, filename)

messagebox.showinfo("成功", "所有MarkDown文件已生成完毕!")

创建主窗口

root = tk.Tk()
root.title(“DeepSeek V3 文章生成器”)

常量部分输入

tk.Label(root, text=“常量部分(固定内容,用{var}表示变量):”).grid(row=0, column=0, padx=10, pady=10)
constant_text = tk.Text(root, height=5, width=50)
constant_text.grid(row=0, column=1, padx=10, pady=10)

变量部分输入

tk.Label(root, text=“变量部分(每行一个变量):”).grid(row=1, column=0, padx=10, pady=10)
variable_text = tk.Text(root, height=5, width=50)
variable_text.grid(row=1, column=1, padx=10, pady=10)

处理按钮

process_button = tk.Button(root, text=“生成文章”, command=process_prompts)
process_button.grid(row=2, column=0, columnspan=2, pady=10)

运行主循环

root.mainloop()
3. 使用说明
运行程序后,在常量部分输入固定内容,用{var}表示变量。
在变量部分输入每行一个变量。
点击“生成文章”按钮,选择输出目录。
程序将根据每个变量生成对应的Markdown文件。
三、DeepSeek的多轮对话功能
以下是一个使用DeepSeek进行多轮对话的代码示例:
Python复制
from openai import OpenAI
import os

def get_response(messages):
client = OpenAI(
api_key=os.getenv(‘DEEPSEEK_API_KEY’),
base_url=“https://api.deepseek.com”,
)
completion = client.chat.completions.create(
model=“deepseek-chat”,
messages=messages
)
return completion

messages = [{‘role’: ‘system’, ‘content’: ‘You are a helpful assistant.’}]
for i in range(3):
user_input = input(“请输入:”)
messages.append({‘role’: ‘user’, ‘content’: user_input})
assistant_output = get_response(messages).choices[0].message.content
messages.append({‘role’: ‘assistant’, ‘content’: assistant_output})
print(f’用户输入:{user_input}‘)
print(f’模型输出:{assistant_output}’)
print(‘\n’)
四、DeepSeek的其他应用

  1. 文章生成
    DeepSeek可以根据用户设置的参数(如文章长度、风格等)生成SEO友好的文章。例如:
    Python复制
    from deepseek_llm import DeepSeekModel

初始化模型实例

model = DeepSeekModel()

设置生成参数

prompt = “请描述未来十年内人工智能的发展趋势。”
max_length = 100

生成文本

generated_text = model.generate(prompt, max_length=max_length)
print(generated_text)
2. 代码生成
DeepSeek还可以生成代码。例如,生成一个简单的计算器代码:
Python复制
from transformers import AutoModelForCausalLM, AutoTokenizer

加载模型和分词器

model = AutoModelForCausalLM.from_pretrained(“deepseek-ai/DeepSeek-V3”)
tokenizer = AutoTokenizer.from_pretrained(“deepseek-ai/DeepSeek-V3”)

输入文本

input_text = “生成一段Python代码,实现一个简单的计算器。”

生成代码

inputs = tokenizer(input_text, return_tensors=“pt”)
outputs = model.generate(**inputs)

输出结果

print(tokenizer.decode(outputs[0], skip_special_tokens=True))
五、总结
DeepSeek通过其强大的API和灵活的配置,为用户提供了一个高效的内容生成工具。无论是批量生成文章、进行多轮对话,还是生成代码,DeepSeek都能满足不同场景下的需求。通过合理配置和优化,用户可以充分发挥DeepSeek的强大功能,提升工作效率。

AI产品独立开发实战营

在这里插入图片描述


http://www.kler.cn/a/526573.html

相关文章:

  • vue框架技术相关概述以及前端框架整合
  • MATLAB中extractAfter函数用法
  • 每日一题——序列化二叉树
  • 论文速读|Matrix-SSL:Matrix Information Theory for Self-Supervised Learning.ICML24
  • Autogen_core: test_code_executor.py
  • 详解python的修饰符
  • 使用Ollama和Open WebUI快速玩转大模型:简单快捷的尝试各种llm大模型,比如DeepSeek r1
  • 33【脚本解析语言】
  • 知识推理简要介绍
  • Letta - 构建有状态LLM应用程序
  • OpenCV实战:车辆统计
  • UML状态机图-并发的表示方法
  • 【Linux】makefile、进度条实现
  • 【ArcGIS遇上Python】批量提取多波段影像至单个波段
  • 【Linux】从硬件到软件了解进程
  • 【愚公系列】《循序渐进Vue.js 3.x前端开发实践》035-组合式API的应用
  • AI大模型开发原理篇-5:循环神经网络RNN
  • 计算机网络之计算机网络分层结构
  • 【RocketMQ 存储】- RocketMQ存储类 MappedFile
  • INCOSE需求编写指南-附录 A: 参考文献
  • 鸟瞰欧洲(意境欧洲) 第一季
  • 尚硅谷spring框架视频教程——学习笔记一(IOC、AOP)
  • 【视频+图文详解】HTML基础3-html常用标签
  • 如何在本地部署deepseek-r1模型【详细步骤】
  • Java8_StreamAPI
  • LruCache实现