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

Dotnet通过OpenAI方式接入DeepSeek

image.png

环境准备

本地使用vs2022 创建控制台项目,选择.net8 作为基础版本。

下载依赖库

下载抽象核心库Microsoft.Extensions.AI.Abstractions。通过 nuget 进行下载。

dotnet add package Microsoft.Extensions.AI.Abstractions --version 9.9.1

添加Microsoft.Extensions.AI.OpenAI 用于连接兼容OpenAI 请求接口的其他平台模型。

dotnet add package Microsoft.Extensions.AI.OpenAI --version 9.9.1-preview.1.25474.6

项目引用依赖如下:

<Project Sdk="Microsoft.NET.Sdk"><PropertyGroup><OutputType>Exe</OutputType><TargetFramework>net8.0</TargetFramework><ImplicitUsings>enable</ImplicitUsings><Nullable>enable</Nullable></PropertyGroup><ItemGroup><PackageReference Include="Microsoft.Extensions.AI.Abstractions" Version="9.9.1" /><PackageReference Include="Microsoft.Extensions.AI.OpenAI" Version="9.9.1-preview.1.25474.6" /></ItemGroup>
</Project>

为简化调测,直接使用国内deepseek 进行模型测试,本身它也兼容OpenAi 对应Api接口访问,官方原话如下:

DeepSeek API 使用与 OpenAI 兼容的 API 格式,通过修改配置,您可以使用 OpenAI SDK 来访问 DeepSeek API,或使用与 OpenAI API 兼容的软件。
出于与 OpenAI 兼容考虑,您也可以将 base_url 设置为 https://api.deepseek.com/v1 来使用,但注意,此处 v1 与模型版本无关。

访问deepseek,登陆后如下界面。
Pasted image 20251004141007.png

创建Api Key

点击右上方API 开放平台,选择API Keys 创建新的API Key,需要记住首次创建后,当前APIKey 将无法直接查看。
Pasted image 20251004141307.png

对应API Key 的名称用于方便区分用途,可随意输入,此处为ds-clientchat,点击保存,弹出API Key,需要进行复制到本地备用。
Pasted image 20251004141853.png
创建成功。
Pasted image 20251004141940.png

添加Api Key 到环境变量(调试)

选中项目单击右键,在【调试】-【常规】-【打开调试启动项文件UI】,添加环境变量OPENAI_API_KEY,对应值设置为通过deepseek 开发平台生成的API Key
Pasted image 20251004142849.png

控制台代码

创建IChatClient 实例。

internal class Program
{async static Task Main(string[] args){string apikey = Environment.GetEnvironmentVariable("OPENAI_API_KEY");// 通过环境变量获取apikeystring model = "deepseek-chat"; // 模型名称string endpoint = "https://api.deepseek.com/v1"; // deepseek中提供兼容openai的访问api// 创建IChatClient实例IChatClient client = new OpenAI.Chat.ChatClient(model, new ApiKeyCredential(apikey), new OpenAIClientOptions { Endpoint = new Uri(endpoint) // 指定api访问地址}).AsIChatClient(); // 将chatclient转换为ichatclient实现实例// 获取http请求响应(非流式)Console.WriteLine(await client.GetResponseAsync("What is AI?")); Console.ReadLine();}
}

运行调试项目需要等待一定时间,毕竟不是流式输出,请求结果需要执行完成后才能够获取到返回结果。
Pasted image 20251004143245.png

http://www.dtcms.com/a/443238.html

相关文章:

  • 第八课(零基础友好版)|第一次训练模型(Teachable Machine,超详细)
  • 定制制作网站公司建筑模型网站有哪些
  • 【多线程】无锁数据结构(Lock-Free Data Structures)是什么?
  • YOLO入门教程(番外):卷积神经网络—卷积神经网络(LeNet)
  • 哪里可以做寄生虫网站wordpress链接默认是什么样子
  • 网站开发常用插件怎样保存网站资料 做证据
  • 网站经常被挂码泉州seo排名扣费
  • 做网站需要做需求分析吗修改wordpress登录背景图片
  • 网站建设人员分布知名的摄影网站有哪些
  • MySQL 运维知识点(十四)---- 主从复制
  • Linux常用通配符大全含运行示例
  • 相城seo网站优化软件django企业级问答网站开发
  • (autode计算化学—atoms)AtomCollection原子集类
  • 主键索引和唯一性索引的区别与联系
  • 免备案域名是危险网站荣耀手机商城官方网
  • 电磁兼容试验标准:电快速脉冲EFT
  • 建立一个平台网站需要多少钱大学软件开发需要学什么
  • wordpress安装好了怎么登陆网站电影网站如何做长尾关键词
  • 苏州h5模板建站效果图
  • yy直播官网怀化网站优化多少钱
  • 浅聊一下TCP协议
  • 怎么建设微网站智能建造师证书
  • 网站询盘量制作网站需要什么语言
  • AI大事记8:深蓝与卡斯帕罗夫——符号主义 AI 的巅峰与局限(中)
  • 数据结构—双链表
  • 长沙公司网站建设上海专业网站制作公司
  • 黄冈网站免费投放平台免费下载计算机网站建设及管理
  • Tailwind CSS介绍(现代CSS框架,与传统CSS框架Bootstrap对比)Tailwind介绍
  • 网群企业网站管理系统哈尔滨快速建站专业定制
  • 做农家乐农产品旅游的网站黄南北京网站建设