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

使用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("输入错误", "请填写常量部分和变量部分。")returnoutput_dir = filedialog.askdirectory(title="选择输出目录")
if not output_dir:returnfor var in variables:if not var.strip():continuefull_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产品独立开发实战营

在这里插入图片描述

相关文章:

使用DeepSeek API生成Markdown文件

DeepSeek技术应用与代码实现 一、DeepSeek简介 DeepSeek是一款强大的人工智能写作助手,能够根据用户输入的提示(Prompt)快速生成高质量的文章。它不仅支持批量生成文章,还能通过智能分段、Markdown转HTML等功能优化内容。此外&…...

java多线程学习笔记

文章目录 关键词1.什么是多线程以及使用场景?2.并发与并行3.多线程实现3.1继承 Thread 类实现3.2Runnable 接口方式实现3.3Callable接口/Future接口实现3.4三种方式总结 4.常见的成员方法(重点记忆)94.1setName/currentThread/sleep要点4.2线程的优先级…...

Manticore Search,新一代搜索引擎之王

吊打ES,新一代搜索引擎之王 概述 Manticore Search 是一个开源的分布式搜索引擎,专注于高性能和低延迟的搜索场景。 它基于 Sphinx 搜索引擎开发,继承了 Sphinx 的高效索引和查询能力,并在分布式架构、实时搜索、易用性等方面进…...

【MySQL】数据类型与表约束

目录 数据类型分类 数值类型 tinyint类型 bit类型 小数类型 字符串类型 日期和时间类型 enum和set 表的约束 空属性 默认值 列描述 zerofill 主键 自增长 唯一键 外键 数据类型分类 数值类型 tinyint类型 MySQL中,整形可以是有符号和无符号的&…...

CAG技术:提升LLM响应速度与质量

标题:CAG技术:提升LLM响应速度与质量 文章信息摘要: CAG(Cache-Augmented Generation)通过预加载相关知识到LLM的扩展上下文中,显著减少了检索延迟和错误,从而提升了响应速度和质量。与传统的R…...

上位机知识篇---Linux源码编译安装链接命令

文章目录 前言第一部分:Linux源码编译安装1. 安装编译工具2. 下载源代码3. 解压源代码4. 配置5. 编译6. 测试(可选)7. 安装8. 清理(可选)9.注意事项 第二部分:链接命令硬链接(Hard Link&#xf…...

科研绘图系列:R语言绘制线性回归连线图(line chart)

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍加载R包数据下载导入数据数据预处理画图保存图片系统信息参考介绍 科研绘图系列:R语言绘制线性回归连线图(line chart) 加载R包 library(tidyverse) library(ggthemes) libra…...

将ollama迁移到其他盘(eg:F盘)

文章目录 1.迁移ollama的安装目录2.修改环境变量3.验证 背景:在windows操作系统中进行操作 相关阅读 :本地部署deepseek模型步骤 1.迁移ollama的安装目录 因为ollama默认安装在C盘,所以只能安装好之后再进行手动迁移位置。 # 1.迁移Ollama可…...

Oracle 创建用户和表空间

Oracle 创建用户和表空间 使用sys 账户登录 建立临时表空间 --建立临时表空间 CREATE TEMPORARY TABLESPACE TEMP_POS --创建名为TEMP_POS的临时表空间 TEMPFILE /oracle/oradata/POS/TEMP_POS.DBF -- 临时文件 SIZE 50M -- 其初始大小为50M AUTOEXTEND ON -- 支持…...

cursor ide配置远程ssh qt c++开发环境过程记录

cursor是啥就不介绍了,好像是目前最好用的ai ide,下面主要是配置远程ssh连接linux机器进行qt5 c程序运行的配置过程记录。 一、c_cpp_properties.json 在项目根目录的.vscode目录里面新建c_cpp_properties.json文件,根据你的实际情况配置该文…...

yolov5错误更改与相关参数详解(train.py)

1.错误更改 main中相关参数 if __name__ __main__:parser argparse.ArgumentParser()parser.add_argument(--weights, typestr, default, helpinitial weights path)parser.add_argument(--cfg, typestr, defaultmodels/yolov5s.yaml, helpmodel.yaml path)parser.add_arg…...

Python设计模式 - 组合模式

定义 组合模式(Composite Pattern) 是一种结构型设计模式,主要意图是将对象组织成树形结构以表示"部分-整体"的层次结构。这种模式能够使客户端统一对待单个对象和组合对象,从而简化了客户端代码。 组合模式有透明组合…...

css粘性定位超出指定宽度失效问题

展示效果 解决办法&#xff1a;外层容器添加display:grid即可 完整代码 <template><div class"box"><div class"line" v-for"items in 10"><div class"item" v-for"item in 8">drgg</div>&…...

Windows 程序设计6:错误码的查看

文章目录 前言一、说明二、使用GetLastError找到错误的原因三、使用错误码的宏总结 前言 Windows 程序设计6&#xff1a;错误码的查看。 一、说明 有时写的代码单纯看是没有问题的&#xff0c;但是执行起来就会崩溃。因此要养成判断函数执行是否成功的习惯&#xff0c;除非这…...

doris: CSV导入数据

本文介绍如何在 Doris 中导入 CSV 格式的数据文件。Doris 支持灵活的 CSV 格式配置&#xff0c;包括自定义分隔符、字段包围符等&#xff0c;并提供多种导入方式以满足不同场景的数据导入需求。 导入方式​ Doris 支持以下方式导入 CSV 格式数据&#xff1a; Stream LoadBro…...

FastStone Image Viewer图像处理软件安装步骤(百度网盘链接)

软件简介&#xff1a;一款小巧便捷的添加水印、特效、图片处理软件&#xff0c;让使用者可以通过它的操作界面来浏览图片&#xff0c;且还支持了幻灯播放的功能&#xff0c;让使用者能够轻松的浏览目录中的所有图片。 网盘链接&#xff1a;https://pan.baidu.com/s/1Zvrx7fXwb6…...

Kafka 深入服务端 — 时间轮

Kafka中存在大量的延迟操作&#xff0c;比如延时生产、延时拉取和延时删除等。Kafka基于时间轮概念自定义实现了一个用于延时功能的定时器&#xff0c;来完成这些延迟操作。 1 时间轮 Kafka没有使用基于JDK自带的Timer或DelayQueue来实现延迟功能&#xff0c;因为它们的插入和…...

网络爬虫学习:应用selenium获取Edge浏览器版本号,自动下载对应版本msedgedriver,确保Edge浏览器顺利打开。

一、前言 我从24年11月份开始学习网络爬虫应用开发&#xff0c;经过2个来月的努力&#xff0c;于1月下旬完成了开发一款网络爬虫软件的学习目标。这里对本次学习及应用开发进行一下回顾总结。 前几天我已经发了一篇日志&#xff08;网络爬虫学习&#xff1a;应用selenium从搜…...

【go语言】结构体

一、type 关键字的用法 在 go 语言中&#xff0c;type 关键字用于定义新的类型&#xff0c;他可以用来定义基础类型、结构体类型、接口类型、函数类型等。通过 type 关键字&#xff0c;我们可以为现有类型创建新的类型别名或者自定义新的类型。 1.1 类型别名 使用 type 可以为…...

Spring Boot是什么及其优点

简介 Spring Boot是基于Spring框架开发的全新框架&#xff0c;其设计目的是简化Spring应用的初始化搭建和开发过程。 Spring Boot整合了许多框架和第三方库配置&#xff0c;几乎可以达到“开箱即用”。 优点 可快速构建独立的Spring应用。 直接嵌入Tomcat、Jetty和Underto…...

云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地

借阿里云中企出海大会的东风&#xff0c;以**「云启出海&#xff0c;智联未来&#xff5c;打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办&#xff0c;现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案

问题描述&#xff1a;iview使用table 中type: "index",分页之后 &#xff0c;索引还是从1开始&#xff0c;试过绑定后台返回数据的id, 这种方法可行&#xff0c;就是后台返回数据的每个页面id都不完全是按照从1开始的升序&#xff0c;因此百度了下&#xff0c;找到了…...

【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表

1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...

【SQL学习笔记1】增删改查+多表连接全解析(内附SQL免费在线练习工具)

可以使用Sqliteviz这个网站免费编写sql语句&#xff0c;它能够让用户直接在浏览器内练习SQL的语法&#xff0c;不需要安装任何软件。 链接如下&#xff1a; sqliteviz 注意&#xff1a; 在转写SQL语法时&#xff0c;关键字之间有一个特定的顺序&#xff0c;这个顺序会影响到…...

【Java_EE】Spring MVC

目录 Spring Web MVC ​编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 ​编辑参数重命名 RequestParam ​编辑​编辑传递集合 RequestParam 传递JSON数据 ​编辑RequestBody ​…...

CSS设置元素的宽度根据其内容自动调整

width: fit-content 是 CSS 中的一个属性值&#xff0c;用于设置元素的宽度根据其内容自动调整&#xff0c;确保宽度刚好容纳内容而不会超出。 效果对比 默认情况&#xff08;width: auto&#xff09;&#xff1a; 块级元素&#xff08;如 <div>&#xff09;会占满父容器…...

SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题

分区配置 (ptab.json) img 属性介绍&#xff1a; img 属性指定分区存放的 image 名称&#xff0c;指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件&#xff0c;则以 proj_name:binary_name 格式指定文件名&#xff0c; proj_name 为工程 名&…...

JVM 内存结构 详解

内存结构 运行时数据区&#xff1a; Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器&#xff1a; ​ 线程私有&#xff0c;程序控制流的指示器&#xff0c;分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 ​ 每个线程都有一个程序计数…...

逻辑回归暴力训练预测金融欺诈

简述 「使用逻辑回归暴力预测金融欺诈&#xff0c;并不断增加特征维度持续测试」的做法&#xff0c;体现了一种逐步建模与迭代验证的实验思路&#xff0c;在金融欺诈检测中非常有价值&#xff0c;本文作为一篇回顾性记录了早年间公司给某行做反欺诈预测用到的技术和思路。百度…...

十九、【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建

【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建 前言准备工作第一部分:回顾 Django 内置的 `User` 模型第二部分:设计并创建 `Role` 和 `UserProfile` 模型第三部分:创建 Serializers第四部分:创建 ViewSets第五部分:注册 API 路由第六部分:后端初步测…...