浙江网站建设哪里有女人和男人做床上爱网站

张小明 2026/1/2 8:29:06
浙江网站建设哪里有,女人和男人做床上爱网站,网站开发与程序开发,做律师网站的网络公司AIContextProvider 实战#xff1a;用户信息记忆组件一句话简介从零实现完整的 UserInfoMemory 类#xff0c;支持自动提取用户信息、序列化持久化和跨 Thread 共享。#x1f3af; 核心功能✅ 自动提取#xff1a;从对话中提取用户姓名和年龄✅ 智能询问#xff1a;未知信…AIContextProvider 实战用户信息记忆组件一句话简介从零实现完整的 UserInfoMemory 类支持自动提取用户信息、序列化持久化和跨 Thread 共享。 核心功能✅自动提取从对话中提取用户姓名和年龄✅智能询问未知信息时主动询问已知时直接使用✅状态持久化支持序列化和反序列化✅跨 Thread 共享在不同对话线程间共享记忆 完整实现步骤 1定义数据模型public class UserInfo { public string? UserName { get; set; } public int? UserAge { get; set; } }步骤 2实现 UserInfoMemorypublic sealedclassUserInfoMemory : AIContextProvider { privatereadonly IChatClient _chatClient; public UserInfo UserInfo { get; set; } // 构造函数1首次创建 public UserInfoMemory(IChatClient chatClient, UserInfo? userInfo null) { _chatClient chatClient; UserInfo userInfo ?? new UserInfo(); } // 构造函数2反序列化恢复 public UserInfoMemory(IChatClient chatClient, JsonElement serializedState, ...) { _chatClient chatClient; UserInfo serializedState.DeserializeUserInfo() ?? new UserInfo(); } // 调用前注入用户信息到上下文 public override ValueTaskAIContext InvokingAsync( InvokingContext context, CancellationToken ct default) { var instructions new StringBuilder(); instructions.AppendLine(UserInfo.UserName isnull ? Ask the user for their name. : $The users name is {UserInfo.UserName}.); instructions.AppendLine(UserInfo.UserAge isnull ? Ask the user for their age. : $The users age is {UserInfo.UserAge}.); returnnew ValueTaskAIContext(new AIContext { Instructions instructions.ToString() }); } // 调用后从对话中提取用户信息 public override async ValueTask InvokedAsync( InvokedContext context, CancellationToken ct default) { if ((UserInfo.UserName isnull || UserInfo.UserAge isnull) context.RequestMessages.Any(x x.Role ChatRole.User)) { try { var result await _chatClient.GetResponseAsyncUserInfo( context.RequestMessages, new ChatOptions { Instructions Extract users name and age if present. }, ct); // 仅更新未知信息 UserInfo.UserName ?? result.Result.UserName; UserInfo.UserAge ?? result.Result.UserAge; } catch { /* 提取失败不影响主流程 */ } } } // 序列化只保存数据状态 public override JsonElement Serialize(JsonSerializerOptions? options null) { return JsonSerializer.SerializeToElement(UserInfo, options); } } 注册到 Agentvar chatClient AIClientHelper.GetDefaultChatClient(); var options new ChatClientAgentOptions { Instructions You are a friendly assistant., AIContextProviderFactory ctx new UserInfoMemory( chatClient, ctx.SerializedState, ctx.JsonSerializerOptions) }; var agent chatClient.CreateAIAgent(options); 测试效果4 轮对话流程第 1 轮用户说你好 → Agent 询问姓名和年龄 第 2 轮用户说我叫张三 → Agent 确认姓名继续询问年龄 第 3 轮用户说25岁 → Agent 确认年龄信息收集完成 第 4 轮用户说天气怎么样 → Agent 记住用户是张三(记忆生效)序列化与恢复// 序列化当前状态 var serialized thread.Serialize(); // 恢复对话 var restored agent.DeserializeThread(serialized); var memory restored.GetServiceUserInfoMemory(); Console.WriteLine(memory.UserInfo.UserName); // 张三跨 Thread 共享// 从原 Thread 提取用户信息 var userInfo oldThread.GetServiceUserInfoMemory()?.UserInfo; // 注入到新 Thread var newMemory newThread.GetServiceUserInfoMemory(); newMemory.UserInfo userInfo; // 新 Thread 直接拥有用户信息无需重新询问 最佳实践技术要点说明两个构造函数首次创建 反序列化恢复使用 ?? 运算符仅更新未知信息不覆盖已知异常处理InvokedAsync 中的异常不影响主流程只序列化数据不序列化服务依赖如 IChatClient验证记忆恢复反序列化后通过对话测试验证 总结✅完整实现InvokingAsync注入 InvokedAsync提取 Serialize持久化✅智能询问根据记忆状态动态生成 Instructions✅序列化支持保存和恢复对话状态✅跨 Thread 共享通过直接赋值实现记忆共享如需获取文章配套完整代码可扫码咨询领取。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

帕绍网站建设wordpress删除模板

3种常见游戏控制器兼容性问题的终极解决方案 【免费下载链接】ViGEmBus 项目地址: https://gitcode.com/gh_mirrors/vig/ViGEmBus 还在为PC游戏识别不了你的手柄而烦恼吗?想要在Steam上玩PS4独占游戏,却发现控制器完全不兼容?ViGEmBu…

张小明 2025/12/30 23:57:03 网站建设

自己做烘焙的网站创意网

为 PyTorch 项目添加 Type Hint 提升可维护性 在现代深度学习开发中,一个常见的场景是:你接手了一个几个月前由同事训练的模型代码,准备做些微调并重新部署。打开脚本后却发现,某个函数接收一个叫 data 的参数——它到底是个张量&…

张小明 2025/12/30 23:56:28 网站建设

无锡网站建设运营建筑资料网站大全

博主介绍:程序喵大人 35 - 资深C/C/Rust/Android/iOS客户端开发10年大厂工作经验嵌入式/人工智能/自动驾驶/音视频/游戏开发入门级选手《C20高级编程》《C23高级编程》等多本书籍著译者更多原创精品文章,首发gzh,见文末👇&#x…

张小明 2025/12/30 23:55:51 网站建设

韩国男女做那个视频网站模板网站和插件

1. 行业爆发式增长 据《中国网络安全产业白皮书(2024)》预测,2025年我国网络安全市场规模将突破2000亿元,年复合增长率达23.5%。随着《数据安全法》《个人信息保护法》全面实施,金融、医疗、政务等关键领域强制要求配…

张小明 2025/12/30 23:55:16 网站建设

静宁县建设局网站小兵cms个人网站模板

终极指南:如何免费解锁网易云音乐ncm文件格式限制 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 还在为网易云音乐下载的ncm文件无法在其他播放器…

张小明 2025/12/30 23:54:04 网站建设