新年伊始,万象更新!随着人工智能技术的飞速发展,AI在各个领域的应用越来越广泛。无论是自然语言处理、图像识别,还是智能推荐系统,AI都在改变着我们的生活和工作方式。在这个新春佳节,AI技术的火爆程度更是达到了一个新的高度,特别是DeepSeek的耀眼成就,更是让纳斯达克众多科技股崩盘,许多企业和开发者都在积极探索如何将AI技术应用到自己的产品和服务中,以提升用户体验和业务效率。
趁着这股东风,我们就祭出.net 技术,来场AI集成秀,也祝大家在新的一年里,各项技术顺利推进,收获满满!
1.DeepSeek API开发集成
DeepSeek是一家专注于自然语言处理(NLP)和人工智能技术的公司,提供了强大的API接口,帮助开发者快速构建智能应用。DeepSeek的API与OpenAI的API兼容性良好,这意味着如果你之前使用过OpenAI的API,可以很容易地迁移到DeepSeek的平台上。
DeepSeek的API提供了多种功能,包括文本生成、文本分类、情感分析、问答系统等。与OpenAI类似,DeepSeek的API也支持多种编程语言,包括Python、JavaScript、Java、C#等。这使得开发者可以根据自己的技术栈选择合适的语言进行开发。
这里我们使用最熟悉的语言 .net, 来训练我们的AI小助手。
2. 一个简单的例子
在本节中,我们将使用.NET 9编写一个简单的示例,展示如何调用DeepSeek的API进行文本生成。我们将创建一个控制台应用程序,通过调用DeepSeek的API生成一段新年祝福语。
2.1 创建项目
首先,打开Visual Studio 2022,创建一个新的控制台应用程序项目。选择.NET 9作为目标框架,并命名为DeepSeekExample。
2.2 安装必要的NuGet包
为了能够方便地调用DeepSeek的API,我们需要安装System.Net.Http.Json和OpenAI 等NuGet包。可以通过NuGet包管理器控制台运行以下命令来安装:
Install-Package System.Net.Http.Json
Install-Package Microsoft.Extensions.Configuration
Install-Package Microsoft.Extensions.Configuration.Abstractions
Install-Package Microsoft.Extensions.Configuration.Binder
Install-Package Microsoft.Extensions.Configuration.EnvironmentVariables
Install-Package Microsoft.Extensions.Configuration.UserSecrets
Install-Package OpenAI
2.3 编写代码
接下来,我们编写代码来调用DeepSeek的API。首先,在Program.cs文件中添加以下代码:
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using OpenAI;
using OpenAI.Chat;
using System.ClientModel;
using System.ClientModel.Primitives;
internal class Program
{
static void Main(string[] args)
{
var configuration = new ConfigurationBuilder()
.AddEnvironmentVariables()
.AddUserSecrets<Program>()
.Build();
var key = configuration.GetValue<string>("DeepSeek:ApiKey");
ApiKeyCredential cred = new ApiKeyCredential(key);
// DeepSeek-V3
ChatClient client = new ChatClient("deepseek-chat", cred,new OpenAIClientOptions
{
Endpoint = new Uri("https://api.deepseek.com"),
UserAgentApplicationId = "webmote",
ProjectId = "deepseek-test",
RetryPolicy = ClientRetryPolicy.Default
});
List<ChatMessage> messages = new List<ChatMessage>()
{
new SystemChatMessage("You are a helpful assistant."),
new UserChatMessage("Hello, Nice to meet you.")
};
var result = client.CompleteChat(messages);
if (result?.Value != null)
{
Console.WriteLine(result.Value.Content[0].Text);
}
}
}
- ApiKey: 这是你的DeepSeek API密钥,配置为 DeepSeek:ApiKey,你可以使用环境变量添加,也可以用管理机密信息添加,这里大力推荐使用机密信息进行安全管理, 这里我们可以利用VS的帮助工具建立,如下图所示。
图片
- 按照打开的secret.json,输入你的api key:
图片
- AI模型,这里使用最新的AI模型,DeepSeek-V3模型,字符串为: "deepseek-chat"
- Chat Message: 使用system赋予Ai一个角色,然后,我们进行提问。
List<ChatMessage> messages = new List<ChatMessage>()
{
new SystemChatMessage("You are a helpful assistant."),
new UserChatMessage("Hello, Nice to meet you.")
};
3. 输出结果
确认你的api Key是正确的,进行访问连接,DeepSeek给予我们一个回答:
Hello! Nice to meet you too!
How can I assist you today?
如果你也能获得答案,那么恭喜你!你已经成功的连接到DeepSeek API。
后续,你可以开始你的激动人心的AI旅程了!
4. 其他方案
Github上也有其他人封装的net类库,例如 Fitomad.DeepSeek, 使用起来也很流畅,编程体验更好,大家如果没有openai使用切换的话,可以下载这个库看看。
var deepSeekSettings = new DeepSeekSettingsBuilder()
.WithApiKey(_apiKey)
.Build();
var services = new ServiceCollection();
services.AddDeepSeekHttpClient(settings: aiSettings);
...
public class GameController: ControllerBase
{
private IDeepSeekClient _deepSeekClient;
public GameController(IDeepSeekClient deepSeekClient)
{
_deepSeekClient = deepSeekClient;
}
...
ChatRequest request = new ChatRequestBuilder()
.WithModel(ChatModelType.DeepSeekChat)
.WithSystemMessage("Eres un profesor universitario de Astrofísica.")
.WithUserMessage("¿En qué consiste la Constante Cosmológica de Einstein?")
.WithTemperatute(-3.0)
.Build();
var resp = await _client.ChatCompletion.CreateChatAsync(request)
}
5.DeepSeek的API收费模式
DeepSeek的API收费模式与OpenAI类似,采用按使用量计费的方式。具体来说,DeepSeek的API收费基于以下几个因素:
请求次数: 每次调用API都会计入请求次数,不同的API端点可能有不同的计费标准。
令牌数: 生成的文本长度(以令牌为单位)也会影响费用。通常,生成的文本越长,费用越高。
API套餐: DeepSeek提供了多种API套餐,开发者可以根据自己的需求选择合适的套餐。套餐通常包括一定的免费额度,超出部分按量计费。
DeepSeek的API收费模式灵活,适合不同规模的开发者和企业。对于小型项目或个人开发者,可以选择按需付费的模式;对于大型企业或高频使用的项目,可以选择预付费套餐以获得更优惠的价格。
图片
大家可以按照需要,进行充值消费,我先来50看看。
图片
6. 总结
通过本文,我们详细介绍了如何使用.NET 9 调用 DeepSeek 的API进行文本生成。我们从创建项目、安装必要的NuGet包,到编写代码、运行实例,一步步展示了整个过程。此外,我们还介绍了DeepSeek的API收费模式,帮助开发者更好地了解如何控制成本。