C# 调用腾讯混元大模型

2023-12-20 02:20

本文主要是介绍C# 调用腾讯混元大模型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

写在前面

今天用C#调用了一下腾讯混元大模型,调用代码贴一下,具体的效果等深入使用后再来评价。

GitHub - TencentCloud/tencentcloud-sdk-dotnet: Tencent Cloud API 3.0 SDK for .NET

腾讯混元大模型简介_腾讯混元大模型购买指南_腾讯混元大模型操作指南-腾讯云 (tencent.com)

代码实现

using Newtonsoft.Json;
using System;
using System.Threading.Tasks;
using TencentCloud.Common;
using TencentCloud.Common.Profile;
using TencentCloud.Cvm.V20170312;
using TencentCloud.Cvm.V20170312.Models;
using TencentCloud.Cwp.V20180228;
using TencentCloud.Hunyuan.V20230901;
using TencentCloud.Hunyuan.V20230901.Models;namespace TencentCloudExamples
{class Sample{static void Main(string[] args){// 实例化一个认证对象,入参需要传入腾讯云账户 SecretId 和 SecretKey,此处还需注意密钥对的保密// 代码泄露可能会导致 SecretId 和 SecretKey 泄露,并威胁账号下所有资源的安全性。以下代码示例仅供参考,建议采用更安全的方式来使用密钥,请参见:https://cloud.tencent.com/document/product/1278/85305// 密钥可前往官网控制台 https://console.cloud.tencent.com/cam/capi 进行获取Credential cred = new Credential{SecretId = "xxx",SecretKey = "xxx"};GetChatStd(cred);}private static string GetRegionTest(Credential cred){try{// 实例化一个client选项,可选的,没有特殊需求可以跳过ClientProfile clientProfile = new ClientProfile();// 实例化一个http选项,可选的,没有特殊需求可以跳过HttpProfile httpProfile = new HttpProfile();httpProfile.Endpoint = ("cvm.tencentcloudapi.com");clientProfile.HttpProfile = httpProfile;// 实例化要请求产品的client对象,clientProfile是可选的CvmClient client = new CvmClient(cred, "", clientProfile);// 实例化一个请求对象,每个接口都会对应一个request对象DescribeRegionsRequest req = new DescribeRegionsRequest();// 返回的resp是一个DescribeRegionsResponse的实例,与请求对象对应var resp = client.DescribeRegions(req);resp.Wait();var result = resp.Result;if (result.RegionSet.Length > 0){var firstRegion = result.RegionSet[0];Console.WriteLine(firstRegion.Region);return firstRegion.Region;}// 输出json格式的字符串回包//Console.WriteLine(AbstractModel.ToJsonString(result));}catch (Exception e){Console.WriteLine(e.ToString());}return string.Empty;}private static void GetChatStd(Credential cred){try{// 实例化一个client选项,可选的,没有特殊需求可以跳过ClientProfile clientProfile = new ClientProfile();// 实例化一个http选项,可选的,没有特殊需求可以跳过HttpProfile httpProfile = new HttpProfile();httpProfile.Endpoint = ("hunyuan.tencentcloudapi.com");clientProfile.HttpProfile = httpProfile;var region = GetRegionTest(cred);// 实例化要请求产品的client对象,clientProfile是可选的HunyuanClient client = new HunyuanClient(cred, region, clientProfile);实例化一个请求对象,每个接口都会对应一个request对象//GetTokenCountRequest req = new GetTokenCountRequest();//req.Prompt = "我是谁";返回的resp是一个GetTokenCountResponse的实例,与请求对象对应//GetTokenCountResponse resp = client.GetTokenCountSync(req);输出json格式的字符串回包//Console.WriteLine(AbstractModel.ToJsonString(resp));var req = new ChatStdRequest();Message[] messages = { new Message() { Role = "user", Content = "写一个二分法算法" } };req.Messages = messages;req.TopP = 0;req.Temperature= 1;var rsp = client.ChatStdSync(req);foreach (var item in rsp){var ob = JsonConvert.DeserializeObject<ResultItem>(item.Data);foreach (var choicesItem in ob.Choices){Console.Write(choicesItem.Delta.Content);}}Console.WriteLine();Console.WriteLine("---回答结束---");}catch (Exception e){Console.WriteLine(e.ToString());}Console.Read();}}public class Delta{public string Role { get; set; }public string Content { get; set; }}public class ChoicesItem{public string FinishReason { get; set; }public Delta Delta { get; set; }}public class Usage{public int PromptTokens { get; set; }public int CompletionTokens { get; set; }public int TotalTokens { get; set; }}public class ResultItem{public string Note { get; set; }public List<ChoicesItem> Choices { get; set; }public int Created { get; set; }public string Id { get; set; }public Usage Usage { get; set; }}}

调用结果:

 

这篇关于C# 调用腾讯混元大模型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/514499

相关文章

在.NET平台使用C#为PDF添加各种类型的表单域的方法

《在.NET平台使用C#为PDF添加各种类型的表单域的方法》在日常办公系统开发中,涉及PDF处理相关的开发时,生成可填写的PDF表单是一种常见需求,与静态PDF不同,带有**表单域的文档支持用户直接在... 目录引言使用 PdfTextBoxField 添加文本输入域使用 PdfComboBoxField

C#如何调用C++库

《C#如何调用C++库》:本文主要介绍C#如何调用C++库方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录方法一:使用P/Invoke1. 导出C++函数2. 定义P/Invoke签名3. 调用C++函数方法二:使用C++/CLI作为桥接1. 创建C++/CL

C#使用StackExchange.Redis实现分布式锁的两种方式介绍

《C#使用StackExchange.Redis实现分布式锁的两种方式介绍》分布式锁在集群的架构中发挥着重要的作用,:本文主要介绍C#使用StackExchange.Redis实现分布式锁的... 目录自定义分布式锁获取锁释放锁自动续期StackExchange.Redis分布式锁获取锁释放锁自动续期分布式

C# foreach 循环中获取索引的实现方式

《C#foreach循环中获取索引的实现方式》:本文主要介绍C#foreach循环中获取索引的实现方式,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录一、手动维护索引变量二、LINQ Select + 元组解构三、扩展方法封装索引四、使用 for 循环替代

C# Where 泛型约束的实现

《C#Where泛型约束的实现》本文主要介绍了C#Where泛型约束的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录使用的对象约束分类where T : structwhere T : classwhere T : ne

C#实现将Excel表格转换为图片(JPG/ PNG)

《C#实现将Excel表格转换为图片(JPG/PNG)》Excel表格可能会因为不同设备或字体缺失等问题,导致格式错乱或数据显示异常,转换为图片后,能确保数据的排版等保持一致,下面我们看看如何使用C... 目录通过C# 转换Excel工作表到图片通过C# 转换指定单元格区域到图片知识扩展C# 将 Excel

C#中async await异步关键字用法和异步的底层原理全解析

《C#中asyncawait异步关键字用法和异步的底层原理全解析》:本文主要介绍C#中asyncawait异步关键字用法和异步的底层原理全解析,本文给大家介绍的非常详细,对大家的学习或工作具有一... 目录C#异步编程一、异步编程基础二、异步方法的工作原理三、代码示例四、编译后的底层实现五、总结C#异步编程

C#TextBox设置提示文本方式(SetHintText)

《C#TextBox设置提示文本方式(SetHintText)》:本文主要介绍C#TextBox设置提示文本方式(SetHintText),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录C#TextBox设置提示文本效果展示核心代码总结C#TextBox设置提示文本效果展示核心代

C#中DrawCurve的用法小结

《C#中DrawCurve的用法小结》本文主要介绍了C#中DrawCurve的用法小结,通常用于绘制一条平滑的曲线通过一系列给定的点,具有一定的参考价值,感兴趣的可以了解一下... 目录1. 如何使用 DrawCurve 方法(不带弯曲程度)2. 如何使用 DrawCurve 方法(带弯曲程度)3.使用Dr

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA