(二)Net8 使用abp.vnext框架集成 deepseek并实现知识库功能
1:使用abp.vnext生成项目,访问下面地址进行项目生成
Get Started with ABP | Quick and Easy Setup Guide | ABP.IO
2:安装必要的nuget包
在xxx.HttpApi.Host中安装
Milvus.Client
Microsoft.Extensions.AI.Ollama
Microsoft.Extensions.AI
Microsoft.Extensions.AI.Abstractions
public override void ConfigureServices(ServiceConfigurationContext context)
{
#region 配置ollama,embedding,Milvus
#region Ollama
var chatEndpoint = configuration["Chat:Ollama:Endpoint"]!;
var chatModelId = configuration["Chat:Ollama:ModelId"]!;
context.Services.AddChatClient(new OllamaChatClient(chatEndpoint, chatModelId)
.AsBuilder()
.Build());
context.Services.AddTransient<IChatService, ChatService>();
#endregion
#region Embedding
var embeddingModelId = configuration["Chat:Embedding:ModelId"]!;
var embeddingEndpoint = configuration["Chat:Embedding:Endpoint"]!;
context.Services.AddEmbeddingGenerator(new OllamaEmbeddingGenerator(embeddingEndpoint, embeddingModelId)
.AsBuilder()
.Build());
#endregion
#region Milvus
context.Services.Configure<MilvusOptions>(configuration.GetSection("Milvus"));
context.Services.AddSingleton(sp =>
{
var options = sp.GetRequiredService<IOptions<MilvusOptions>>().Value;
return new MilvusClient(options.Host, options.Port);
});
context.Services.AddTransient<MilvusClientRepository>();
context.Services.AddTransient<IVectorService, VectorService>();
#endregion
}
appsettings.json文件
{
"Chat": {
"Ollama": {
"Endpoint": "http://192.168.3.40:11434/",
"ModelId": "deepseek-r1:14b"
},
"Embedding": {
"Endpoint": "http://192.168.3.40:11434",
"ModelId": "nomic-embed-text:latest"
}
},
"Milvus": {
"Host": "192.168.3.111",
"Port": 19530,
"CollectionName": "documents",
"VectorDimension": 768 //384 //768 //
}
}
更多推荐




所有评论(0)