当前位置: 首页 > 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…...

Nuxt.js 中的路由配置详解

Nuxt.js 通过其内置的路由系统简化了应用的路由配置&#xff0c;使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...

Qt Http Server模块功能及架构

Qt Http Server 是 Qt 6.0 中引入的一个新模块&#xff0c;它提供了一个轻量级的 HTTP 服务器实现&#xff0c;主要用于构建基于 HTTP 的应用程序和服务。 功能介绍&#xff1a; 主要功能 HTTP服务器功能&#xff1a; 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...

【单片机期末】单片机系统设计

主要内容&#xff1a;系统状态机&#xff0c;系统时基&#xff0c;系统需求分析&#xff0c;系统构建&#xff0c;系统状态流图 一、题目要求 二、绘制系统状态流图 题目&#xff1a;根据上述描述绘制系统状态流图&#xff0c;注明状态转移条件及方向。 三、利用定时器产生时…...

有限自动机到正规文法转换器v1.0

1 项目简介 这是一个功能强大的有限自动机&#xff08;Finite Automaton, FA&#xff09;到正规文法&#xff08;Regular Grammar&#xff09;转换器&#xff0c;它配备了一个直观且完整的图形用户界面&#xff0c;使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...

代理篇12|深入理解 Vite中的Proxy接口代理配置

在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...

docker 部署发现spring.profiles.active 问题

报错&#xff1a; org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...

使用Spring AI和MCP协议构建图片搜索服务

目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式&#xff08;本地调用&#xff09; SSE模式&#xff08;远程调用&#xff09; 4. 注册工具提…...

站群服务器的应用场景都有哪些?

站群服务器主要是为了多个网站的托管和管理所设计的&#xff0c;可以通过集中管理和高效资源的分配&#xff0c;来支持多个独立的网站同时运行&#xff0c;让每一个网站都可以分配到独立的IP地址&#xff0c;避免出现IP关联的风险&#xff0c;用户还可以通过控制面板进行管理功…...

Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换

目录 关键点 技术实现1 技术实现2 摘要&#xff1a; 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式&#xff08;自动驾驶、人工驾驶、远程驾驶、主动安全&#xff09;&#xff0c;并通过实时消息推送更新车…...

Web中间件--tomcat学习

Web中间件–tomcat Java虚拟机详解 什么是JAVA虚拟机 Java虚拟机是一个抽象的计算机&#xff0c;它可以执行Java字节码。Java虚拟机是Java平台的一部分&#xff0c;Java平台由Java语言、Java API和Java虚拟机组成。Java虚拟机的主要作用是将Java字节码转换为机器代码&#x…...