基于C#调用文心一言大模型制作桌面软件(可改装接口)



目录
- 开发前的准备
- 账号注册
- 应用创建
- 应用接入
- 开始开发
- 创建项目
- 设计界面
- 使用 AK,SK 生成鉴权签名
- 窗体代码
- 百度智能云千帆大模型平台
- 什么是百度智能云千帆大模型平台
- 模型更新记录
开发前的准备
账号注册
访问百度智能云平台,通过百度账号登录或手机号验证。
点此跳转百度智能云平台
应用创建
登录成功后看到的是一个控制台总览的页面,在页面上方文本框搜索千帆大模型,点击跳转。
应用接入
左侧点击应用接入,并在该页完成应用创建。
在应用配置这一项,可以勾选全部服务。
这里保留好API Key 和 Secret Key两个凭证,后面开发的时候用得上。
开始开发
创建项目
通过vs创建Windows窗体应用。
设计界面
在form界面,打开工具箱,这里用默认的控件就可以实现。
label、textBox、button、richTextBox。
使用 AK,SK 生成鉴权签名
通过NuGet包管理器安装RestSharp包,我这里的版本是106.2.0,该包用于发送https请求。
/*** 使用 AK,SK 生成鉴权签名(Access Token)* @return 鉴权签名信息(Access Token)*/public static string GetAccessToken(string API_KEY,string SECRET_KEY){var url = "https://aip.baidubce.com/oauth/2.0/token";var client = new RestClient(url);client.Timeout = -1;var request = new RestRequest(Method.POST);request.AddParameter("grant_type", "client_credentials");request.AddParameter("client_id", API_KEY);request.AddParameter("client_secret", SECRET_KEY);IRestResponse response = client.Execute(request);var result = JsonConvert.DeserializeObject<dynamic>(response.Content);return result.access_token.ToString();}
窗体代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Newtonsoft.Json;
using RestSharp;namespace WindowsFormsApp2
{public partial class Form1 : Form{public Form1(){InitializeComponent();}private void Form1_Load(object sender, EventArgs e){}public static string GetChat(string accessToken, string userId, List<ChatDTO> messages){ChatParam ChatReq = new ChatParam{user_id = userId,messages = messages,temperature = 0.95,top_p = 0.8,penalty_score = 1,disable_search = false,enable_citation = false,stream = false};var url = $"https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/ernie-speed-128k?access_token={accessToken}";var client = new RestClient(url);client.Timeout = -1;var request = new RestRequest(Method.POST);request.AddHeader("Content-Type", "application/json");var body = JsonConvert.SerializeObject(ChatReq);request.AddParameter("application/json", body, ParameterType.RequestBody);IRestResponse response = client.Execute(request);return response.Content;}/*** 使用 AK,SK 生成鉴权签名(Access Token)* @return 鉴权签名信息(Access Token)*/public static string GetAccessToken(string API_KEY,string SECRET_KEY){var url = "https://aip.baidubce.com/oauth/2.0/token";var client = new RestClient(url);client.Timeout = -1;var request = new RestRequest(Method.POST);request.AddParameter("grant_type", "client_credentials");request.AddParameter("client_id", API_KEY);request.AddParameter("client_secret", SECRET_KEY);IRestResponse response = client.Execute(request);var result = JsonConvert.DeserializeObject<dynamic>(response.Content);return result.access_token.ToString();}/// <summary>/// 点击发送/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void btnSend_Click(object sender, EventArgs e){label5.Text = "发送请求中...";var token = GetAccessToken(this.textBox1.Text,this.textBox2.Text);List<ChatDTO> messages = new List<ChatDTO>();string sayWord = richTextBox1.Text;messages.Add(new ChatDTO { role = "user", content = sayWord });if (string.IsNullOrEmpty(sayWord)){MessageBox.Show("说点什么");richTextBox1.Focus();return;}if (richTextBox2.Text != ""){richTextBox2.AppendText("\r\n");}richTextBox2.AppendText("用户: " + sayWord + "\r\n");var chatMsg = GetChat(token, "key00258521", messages);ChatCompletionResponse response = JsonConvert.DeserializeObject<ChatCompletionResponse>(chatMsg);richTextBox2.SelectionColor = Color.Red;richTextBox2.AppendText("文心一言: " + response.Result);label5.Text = "请求完成。";richTextBox1.Clear();}/// <summary>/// 点击清空/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void button2_Click(object sender, EventArgs e){richTextBox1.Clear();richTextBox2.Clear();}}
}
百度智能云千帆大模型平台
什么是百度智能云千帆大模型平台
产品定义:
百度智能云千帆大模型平台(以下简称千帆或千帆大模型平台)是面向企业开发者的一站式大模型开发及服务运行平台。千帆不仅提供了包括文心一言底层模型和第三方开源大模型,还提供了各种AI开发工具和整套开发环境,方便客户轻松使用和开发大模型应用。
支持数据管理、自动化模型SFT以及推理服务云端部署的一站式大模型定制服务,助力各行业的生成式AI应用需求落地。
应用场景:
面向不同的企业需求,千帆提供不同的功能服务。
例如,智能对话、智能输入法等通用应用场景,可在千帆直接体验文心一言企业级推理云服务,并进行业务集成;
细分领域电销场景的商品介绍、推广文章等需要对推理结果进行定制调整,则可在文心千帆使用模型在线微调训练功能,快速生成行业场景定制模型服务,满足用户特定需求。
- 场景一:对话沟通
匹配场景:智能营销、智能客服、情感沟通等需要沟通对话的场景。
在实际生活中,针对用户需求提供快速应答,精准匹配用户需求,完成营销商拓、及时响应、正向心理辅导等内容,提升客户体验。
具体案例:针对用户需求,输出结果。例如,用户需要平台帮忙推荐一下四大名著,如下图所示:
- 场景二:内容创作
匹配场景:剧本、故事、诗歌等文本创作场景。
根据用户的需求,生成精准匹配的创作文本,为用户提供视频编排的剧本来源;润色成型的故事、诗歌等文本内容,给用户创造提升文本能力的文化环境。
具体案例:用户下发自定义指令,创作成型的文本内容。例如,用户需要平台按要求写一首藏头诗,如下图所示:
- 场景三:分析控制
匹配场景:所谓分析控制是包含代码生成、数据报表、内容分析等深度学习的文本场景。
根据用户的需求快速生成可执行的代码,或者平台结合自身已具备的多种数据,生成匹配度更高的其他应答内容。
具体案例:用户临时遇到需处理的问题,平台生成解决方案。例如,开发工程师利用平台生成具体代码,完成代码的优化,如下图所示:
模型更新记录
日期 | 模型 | 模型名称 | 模型版本 | 模型类型 | 动态说明 | 介绍及调用 |
---|---|---|---|---|---|---|
8月2日 | 百度 | ERNIE-Novel-8K | ERNIE-Novel-8K | 对话Chat | 上新 | 百度自研通用大语言模型,在小说续写能力上有明显优势,也可用在短剧、电影等场景。2024年8月2日首次发布的版本,百度自研通用大语言模型,在小说续写能力上有明显优势,也可用在短剧、电影等场景。 |
相关文章:

基于C#调用文心一言大模型制作桌面软件(可改装接口)
目录 开发前的准备账号注册应用创建应用接入 开始开发创建项目设计界面使用 AK,SK 生成鉴权签名窗体代码 百度智能云千帆大模型平台什么是百度智能云千帆大模型平台模型更新记录 开发前的准备 账号注册 访问百度智能云平台,通过百度账号登录或手机号验证…...

VScode插件安装
一、常用插件 Chinese (Simplified) (简体中文) Language Pack for Visual Studio Code vscode 中文插件 Auto Rename Tag 闭合标签 Path Intellisense 一个非常实用的工具,它提供了文件路径的自动补全功能,可以极大地提高开发效率。路径自动补全、…...

《Milvus Cloud向量数据库指南》——高可用黄金标准:深入解析与业务策略考量
高可用黄金标准:深入解析与业务策略考量 在信息技术飞速发展的今天,高可用性(High Availability, HA)已成为衡量企业IT系统性能与稳定性的关键指标之一。它不仅仅关乎技术层面的优化与配置,更是企业保障业务连续性、提升客户体验、增强市场竞争力的重要基石。尽管高可用性…...

sqli-labs注入练习1,2关
sqli-labs第一关 判断是否存在sql注入 可见,根据输入数字的不同,结果也不同 判断sql语句是否是拼接,且是字符型还是数字型 由上可见,这关指定是字符型且存在sql注入漏洞 使用联合注入 第一步:首先知道表格有几列&…...

B站宋红康JAVA基础视频教程个人笔记chapter04
文章目录 1.IDEA安装好后的一些设置和学习1.1关于IDEA内部jdk版本的设置1.2 一些样式以及快捷键的常用设置(强烈推荐) 2.工程与模块管理3.如何彻底的卸载IDEA 1.IDEA安装好后的一些设置和学习 1.1关于IDEA内部jdk版本的设置 1.File—>Project Struc…...
关于java枚举为什么可以拿来当单例实现这件事看看ikun怎么说
为什么枚举可以保证单例 枚举可以保证单例的原因主要可以归结为以下几个方面: 1. 枚举的实例化过程 线程安全:枚举的实例化过程是由JVM控制的,在类加载时就完成了枚举常量的初始化。由于这个初始化过程是线程安全的(JVM在加载枚…...
Hugging Face下载模型
1、安装 huggingface-cli pip install -U huggingface_hub 2、设置环境变量(如果你打算使用 HF_ENDPOINT 环境变量来指定下载镜像站点): export HF_ENDPOINThttps://hf-mirror.com 3、使用 huggingface-cli 下载模型: 使用下面的命令来下…...

JVM-垃圾回收
什么是JVM的垃圾回收? 垃圾回收(Garbage Collection, GC)是Java虚拟机(JVM)自动管理内存的一种机制,其目的是自动回收不再使用的对象所占用的内存空间,以防止内存泄漏和提升内存利用效率。 运…...

8.C基础_指针基础
指针概述 1、定义与初始化 形式:<数据类型>* <变量名> <地址>; int a 10; int *p &a; 指针的类型不同,p时的偏移地址量不同,偏移地址 sizeof(类型)Byte 注意点: 指针的类型要与数据的类型保持一…...

安泰功率放大器使用注意事项有哪些内容和要求
功率放大器是一种广泛应用于音频系统、通信系统和实验室等领域的设备,其作用是将输入信号放大到足够大的功率输出。为了安全使用功率放大器并保证其性能和寿命,以下是一些使用功率放大器时需要注意的事项和要求。 一、选择适当的功率放大器: …...

windows下,使用vs code远程连接云服务器【以CentOS7为例】
windows下,使用vs code远程连接云服务器 1. 下载VS code并准备相关插件2. 使用Remote - SSH远程控制Linux 1. 下载VS code并准备相关插件 1. VS code官网: 下载地址:https://code.visualstudio.com/Download下载合适版本的vs code。 2. 推荐…...

x264 中像素扩边算法源码分析
介绍 在视频编码中,特别是在使用x264这样的H.264/MPEG-4 AVC编码器时,像素扩边(或称为边缘扩展)是一项重要的预处理步骤。像素扩边的目的是在帧的边缘添加额外的像素,这样在编码过程中可以应用滤波器,如去块滤波器(deblocking filter)和水平/垂直滤波器,而不会受到帧…...

数据结构——双链表详解(超详细)
前言: 小编在之前已经写过单链表的创建了,接下来要开始双链表的讲解了,双链表比单链表要复杂一些,不过确实要比单链表更好进行实现!下面紧跟小编的步伐,开启今天的双链表之旅! 目录 1.概念和结构…...
银行项目利润问题(贪心思想)
import java.util.Comparator; import java.util.PriorityQueue;public class test32 {//输入正数数组costs、正数数组profits、正数K、正数M//costs[i]表示i号项目花费,profits[i]表示i号项目在扣除花费后还挣的钱//K表示有多少项目//M表示初始资金//每做完一个项目…...
SQLite
SQLite Insert 插入 语句 方式1: INSERT INTO TABLE_NAME [(column1, column2, column3,...columnN)] VALUES (value1, value2, value3,...valueN); 方式2: INSERT INTO TABLE_NAME VALUES (value1,value2,value3,...valueN); (如果要…...

浅谈 Mybatis 框架
文章目录 一、什么是MyBatis?1.2、JDBC 二、使用Mybatis2.1、配置MyBatis开发环境2.1.1、配置连接字符串2.1.2、配置MyBatis中的XML路径 2.2、使用MyBatis模式和语法操作数据库 三、使用 Mybatis 进行增删改查操作的要点3.1、ResultMap的用法 四、Mybatis操作难点4.1、#{ } 和…...
【星海随笔】OSPF协议
OSPF OSPF 可在单一自治系统(Autonomous System, AS)内决策路由。OSPF 是目前内部网关协议中使用最为广泛、性能最优的一个动态路由协议。 (1) OSPF 的特点。可适应大规模的网,路由变化收敛速度块,无路由自环,支持变…...

Vue 使用elementUI-plus el-calendar加 公历转农历 是否节假日 等
效果图: 1. 使用到自定文件 calendar.js /*** 1900-2100区间内的公历、农历互转* charset UTF-8* Author Jea杨(JJonlineJJonline.Cn)* Time 2014-7-21* Time 2016-8-13 Fixed 2033hex、Attribution Annals* Time 2016-9-25 Fixed lunar LeapMonth Param…...

SQL-锁
一.锁的介绍 锁是计算机协调多个进程或线程并发访问一资源的机制。在数据中,除传统的计算资源(CPU,RAM,I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性,有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因…...
索引小tips
一、优化原则 关于创建索引: 1. 【强制】InnoDB表必须主键为id int/bigint auto_increment,且主键值禁⽌被更新 。 2. 【强制】InnoDB和MyISAM存储引擎表,索引类型必须为 BTREE 。 3. 【建议】主键的名称以 pk 开头,唯⼀键以…...
QMC5883L的驱动
简介 本篇文章的代码已经上传到了github上面,开源代码 作为一个电子罗盘模块,我们可以通过I2C从中获取偏航角yaw,相对于六轴陀螺仪的yaw,qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...
深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法
深入浅出:JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中,随机数的生成看似简单,却隐藏着许多玄机。无论是生成密码、加密密钥,还是创建安全令牌,随机数的质量直接关系到系统的安全性。Jav…...

家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...

什么是库存周转?如何用进销存系统提高库存周转率?
你可能听说过这样一句话: “利润不是赚出来的,是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业,很多企业看着销售不错,账上却没钱、利润也不见了,一翻库存才发现: 一堆卖不动的旧货…...
【python异步多线程】异步多线程爬虫代码示例
claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...

Maven 概述、安装、配置、仓库、私服详解
目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

HashMap中的put方法执行流程(流程图)
1 put操作整体流程 HashMap 的 put 操作是其最核心的功能之一。在 JDK 1.8 及以后版本中,其主要逻辑封装在 putVal 这个内部方法中。整个过程大致如下: 初始判断与哈希计算: 首先,putVal 方法会检查当前的 table(也就…...
面试高频问题
文章目录 🚀 消息队列核心技术揭秘:从入门到秒杀面试官1️⃣ Kafka为何能"吞云吐雾"?性能背后的秘密1.1 顺序写入与零拷贝:性能的双引擎1.2 分区并行:数据的"八车道高速公路"1.3 页缓存与批量处理…...

[拓扑优化] 1.概述
常见的拓扑优化方法有:均匀化法、变密度法、渐进结构优化法、水平集法、移动可变形组件法等。 常见的数值计算方法有:有限元法、有限差分法、边界元法、离散元法、无网格法、扩展有限元法、等几何分析等。 将上述数值计算方法与拓扑优化方法结合&#…...

数据挖掘是什么?数据挖掘技术有哪些?
目录 一、数据挖掘是什么 二、常见的数据挖掘技术 1. 关联规则挖掘 2. 分类算法 3. 聚类分析 4. 回归分析 三、数据挖掘的应用领域 1. 商业领域 2. 医疗领域 3. 金融领域 4. 其他领域 四、数据挖掘面临的挑战和未来趋势 1. 面临的挑战 2. 未来趋势 五、总结 数据…...