目录
下面我们讲解从0开始搭建我们的免费大模型管理平台,接入其他的免费大模型,然后加入到我们自己的平台当中,然后进行监控和管理。
部署大模型管理平台
下面我们将在拥有docker的环境下部署我们的大模型管理平台。
打开我们的服务器。
然后执行
docker run -d -p 18080:8080 --name ai-dotnet-api-service -v $PWD/data:/data -e TZ=Asia/Shanghai -e DBType=sqlite -e ConnectionString="data source=/data/token.db" -e Theme=lobe -e LoggerConnectionString="data source=/data/logger.db" registry.token-ai.cn/ai-dotnet-api-service
然后他会在当前目录下生成data目录,这个目录就是默认数据库sqlite的数据持久化目录。
使用默认密码登录到系统当中
账号:admin
密码:admin
注册腾讯大模型
点击这里[1] 进混元大模型,然后登录,
然后接入控制台腾讯云 - 控制台 (tencent.com)[2]
然后点击创建密钥,创建完成以后得到密钥,
添加模型渠道
下面我们打开大模型管理平台,然后进入渠道
菜单,然后点击右上角的操作
展开的创建渠道
-
渠道名称
测试模型
-
渠道类型
腾讯混元大模型
-
代理地址 空
-
资源地域 (看个人情况定)
-
密钥格式
SecretId|SecretKey
,请注意密钥格式中间有一个|
-
模型填写
hunyuan-lite
,因为腾讯目前只有这个大模型是免费使用的。
然后点击提交。
我们可以尝试点击这个未测试
测试渠道是否可用,测试完成以后会更新延迟(这个延迟其实就是发送一个对话给AI然后AI实际响应的时间)。
根据上面的测试,我们给我们的平台接入了腾讯大模型的免费模型hunyuan-lite
然后我们试试看用semantic-kernel
进行对话操作。
给semantic-kernel
接入免费的大模型
创建一个ConsoleApp1
控制台项目
打开ConsoleApp1.csproj
文件
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.SemanticKernel" Version="1.14.1" />
</ItemGroup>
</Project>
我们添加了Microsoft.SemanticKernel
依赖,然后进入我们的下一步。
由于SK内部的OpenAI方法的端点是内置的,所以我们需要使用HttpClientHandler去修改端点。
创建OpenAIHttpClientHandler.cs
namespace ConsoleApp1;
public class OpenAIHttpClientHandler(string uri) : HttpClientHandler
{
private readonly string _uri = uri.TrimEnd('/');
protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request,
CancellationToken cancellationToken)
{
// 替换https://api.openai.com/为 _uri
request.RequestUri =
new Uri(request.RequestUri?.ToString().Replace("https://api.openai.com/", _uri + "/"));
return await base.SendAsync(request, cancellationToken);
}
}
打开大模型管理平台的令牌菜单,然后点击查看
,然后复制弹窗的key。
然后打开Program.cs
using ConsoleApp1;
using Microsoft.SemanticKernel;
var kernel = Kernel.CreateBuilder()
.AddOpenAIChatCompletion(
modelId: "hunyuan-lite",
apiKey: "这里填写在https://api.token-ai.cn/创建的令牌",
httpClient: new HttpClient(new OpenAIHttpClientHandler("复制您的大模型平台的地址 示例:https://api.token-ai.cn/")))
.Build();
await foreach (var item in kernel.InvokePromptStreamingAsync("您好,我是TokenAI"))
{
Console.Write(item.ToString());
};
然后执行项目,然后就得到了回复。并且这是完全免费QPS
也有5个。
结论
在搭建免费大模型管理平台的过程中,首先需要部署大模型管理平台,并在拥有docker的环境下执行特定命令。接着需要注册腾讯大模型,并添加模型渠道,最后给semantic-kernel
接入免费的大模型。
技术交流群:961090189
微信交流群:联系微信wk28u9123456789
提供OpenAI
六折并且自带对话的网站https://open666.cn/
(也是基于开源项目AIDotNet.API搭建)
Github: https://github.com/AIDotNet/AIDotNet.API
参考资料
[1] 这里: https://cloud.tencent.com/product/hunyuan
[2] 腾讯云 - 控制台 (tencent.com): https://console.cloud.tencent.com/hunyuan