分类:
Azure机器人
◆
标签:
#Azure Bot Framework SDK
#Azure Bot Service
#机器人
◆
发布于: 2023-08-07 22:48:20
Bot的事件驱动
我们之前的文章讨论了一个Bot应用实际参与的几个组件。
物理组件:
Channel: 就是一个物理的应用,例如微信,Teams
Bot Service: 用于和Channel相连,转发消息到Bot
运行Bot的资源。
逻辑组件:
Channel endpoint
Adapter
Bot Turn Context Handle
Activity
TurnContext
一个消息的流入路径是:用户 -> Channel -> Adapter -> Adapter middleware -> Bot Turn handle
Read more
分类:
Azure机器人
◆
标签:
#Azure Bot Framework SDK
#Azure Bot Service
#机器人
◆
发布于: 2023-08-07 22:43:39
我们前面的文章向大家展示了如何快速的写一个简单的聊天机器人,如果您还没有看过这篇文章,您可以使用如下的连接阅读:https://www.azuredeveloper.cn/article/hello-bot。
需要说明的是,之前文章介绍的虽然是一个很简单的聊天机器人,但是它的应用场景不简单。它已经可以很好的满足很多场景下的聊天需求了,您需要需要做的仅仅是在Bot里添加更多或者集成的服务,用于满足更多场景:例如在Bot的OnMessageActivity的事件里添加更多的命令,保存每个用户的id和它和bot之间的conversationId,添加自然语言处理,或者问答系统。机器人的架构可以不用做任何更改,通过扩充和集成其他系统到Bot事件处理方法里,就可以提升和增加它的处理能力了。
Read more
分类:
Azure机器人
◆
标签:
#Azure Bot Framework SDK
#Azure Bot Service
#机器人
◆
发布于: 2023-08-07 22:40:36
我们之前的文章简单的介绍了一下由微软提供的Azure Bot Framework SDK以及Azure Bot Service服务,比较不妙的是看起来这个服务真没啥人用,不能排除微软之后就不支持这个服务。但是Azure Bot Framework SDK是开源的,而且还有一个开源的社区,因此即便微软不支持Azure Bot Service了,Azure Bot Framework SDK还会以开源的形式继续存在,如果要做聊天机器人,还是可以继续使用这个框架,也可以考虑参与开源的开发。我为了自己的项目也尝试参与了两个开源的项目,一个是Bot基于SQL Server的IStore实现,另外一个是WeChat的Adapter, 这两个项目之前都是有的,但是太老,几年没有更新了,不能支持.Net6,
Read more
分类:
Azure机器人
◆
标签:
#Azure Bot Framework SDK
#Azure Bot Service
#机器人
◆
发布于: 2023-08-07 22:36:15
聊天机器人在电商时代有很多的应用,各种自动客服,订单系统,电话语音等。它适用各种重复的,枯燥的工作。在和人的交互过程中,聊天机器人可以通过语音,文字,图片,甚至是视频完成交互工作。同时可以接入自然语言处理模型,问答模型等等各种基于AI的组件,使得聊天机器人更像人类,更好,更自然的完成交互的工作。
要设计一个聊天机器人的基础框架是繁复的,需要考虑很多场景,例如多场景对话,连续对话,跳跃性对话等都需要认真的考虑,技术上也受制各种技术集成,拔高了难度。推荐大家可以使用微软推出的Azure Bot Service来简化聊天机器的开发,节省成本,何乐而不为。
我们先看一下Azure Bot Service的介绍。
Read more
分类:
.Net技术
◆
标签:
#基础
#.Net
◆
发布于: 2023-08-07 22:28:33
为了快速的通过代码学习Azure的.Net SDK或者API, 我们可以配置Jupyter notebook、Jupyter lab或者VS Code交互式的使用.Net, 这样不用写很多代码,而且可以快速的演示和学习功能,我们下面来介绍如何安装和配置这个工具。
安装jupyter
首先我们需要安装一个Python, 这个很好理解,因为jupyter是基于python的。
您可以从https://www.python.org下载适合您平台的python版本并安装,安装好了之后,打开管理员终端(在Windows下), 如果是Linux,则使用sudo。
使用如下的命令来安装Jupyter notebook和jupyter lab:
Read more
分类:
故障排查
◆
标签:
#Azure Machine Learning
#机器学习
◆
发布于: 2023-08-07 22:21:35
Azure Machine Learning全面升级,从基于V1 SDK开始向V2 SDK升级,不过由于V2 SDK目前还是在Public Preview,没有正式发布,在使用V2 SDK的环境中经常会遇到各种奇奇怪怪的问题。
V2 SDK提供了很多新的特性,以及更合理的数据处理方式,在开始重现我们这个问题之前需要准备一下基本的工具和环境:
你需要一个Azure订阅,您可以参考文章:https://www.azuredeveloper.cn/article/how-to-get-azure-account, 免费注册一个账号。
你需要创建一个Azure Machine Learning的workspace。
安装Azure Cli工具,您可以参考文章:https://www.
Read more
分类:
故障排查
◆
标签:
#Databricks
#大数据
◆
发布于: 2023-08-07 22:14:07
最近遇到一个案例:起初我们是想在Databricks里通过pyodbc访问访问外部的数据,这个简单,写一个脚本,然后把这个脚本放置到集群的初始化脚本里,安装必要的库就行了。脚本如下:
#!/bin/sh
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install msod
Read more
分类:
.Net技术
◆
标签:
#异步编程
#基础
#.Net
#WPF
◆
发布于: 2023-08-07 22:04:07
熟悉Asp.net Core的同行应该都非常了解它的Host模型,特别是Generic Host,Host将一系列的功能全部压缩的这个模型里,这包括依赖注入,配置管理,日志管理,生命周期管理等等。如果你想对Host多了解一下,您可以参考如下的文档:
Read more
分类:
.Net技术
◆
标签:
#异步编程
#.Net
#基础
◆
发布于: 2023-08-07 22:00:48
我喜欢.Net的最大原因就是.Net是真的提供了很多工具简化编程的难度,并提供了健壮性。尤其是异步编程模式的提出。
.Net使用async和await两个关键字来简化异步编程,不过需要注意的是:
异步编程不是并行编程,和我们提到的多线程编程虽然有联系,但是异步编程不是多线程的那种多任务编程。
异步编程要注意编程任务是基于CPU计算多,还是基于IO多,特别是在基于Asp.net Core Genric Host进行后端服务编程时(例如:写基于Windows或者基于Linux的服务程序,不是指Web编程),特别需要注意区分你的任务是基于IO的还是基于CPU计算的任务。基于CPU计算的任务都需要Task.Factory.new放入runtime的线程池中运行。
在基础的编程模型中我
Read more
分类:
.Net技术
◆
标签:
#异步编程
#.Net
#MVVM
◆
发布于: 2023-08-07 21:30:33
今天找到了几篇非常好的文章,这些文章集中讨论了MVVM模式的编程,一一分享给大家。
本篇讨论在WPF & Net MAUI & WinUE3 MVVM项目中使用Async & await进行多任务编程,是基于大牛Stephen Cleary于2014年3月份左右发表的博客。原始页面已经找不到了,进入了微软MSDN杂志的存档了。
之前在网络上搜索了不少文章,这些文章讨论如何在UI环境中使用多线程时无一例外的都是利用例如wpf的dispatcher将长时间运行的线程放置到后台线程中,并通过Dispatcher来更新UI, UI线程无需等待。看到这些代码我都有一个问题,为什么不可以直接使用async/await而避免使用dispatcher来配合多任务编程呢?找了不少方案,自己也尝试设
Read more