标签归档:csharp

Antlr4-ANTLR 是一个功能强大的解析器生成器,用于读取、处理、执行或翻译结构化文本或二进制文件

ANTLR(另一个用于语言识别的工具)是一个功能强大的解析器生成器,用于读取、处理、执行或翻译结构化文本或二进制文件。它被广泛用于构建语言、工具和框架。根据语法,ANTLR生成一个解析器,该解析器可以构建解析树,还可以生成一个侦听器接口(或访问器),从而可以轻松地响应感兴趣的短语的识别

考虑到日间工作的限制,我在这个项目上的工作时间有限,因此我必须首先专注于修复bug,而不是更改/改进功能集。很可能我每隔几个月就会突然做一次。如果您的bug或Pull请求没有产生响应,请不要生气!–parrt

作者和主要贡献者

有用的信息

您可能还会发现以下页面很有用,特别是当您想要使用各种目标语言时

权威的ANTLR 4参考

程序员总是遇到解析问题。无论是JSON这样的数据格式,SMTP这样的网络协议,Apache的服务器配置文件,PostScript/PDF文件,还是简单的电子表格宏语言-ANTLR v4,本书都将揭开这个过程的神秘面纱。ANTLRv4已经从头开始重写,使得构建解析器和构建在其上的语言应用程序比以往任何时候都更加容易。这本完全改写的新版畅销ANTLR权威参考向您展示了如何利用这些新功能

你可以买这本书The Definitive ANTLR 4 Reference在亚马逊或electronic version at the publisher’s site

您会发现Book source code有用的

附加语法

This repository是不带动作的语法集合,其中根目录名是语法分析的语言的全小写名称。例如,java、cpp、cSharp、c等

Botframework-sdk-BOT框架为构建对话应用程序提供了最全面的体验

BOT框架为构建对话应用程序提供了最全面的体验

使用Bot Framework SDK,开发人员可以构建与自由格式或具有引导交互的机器人进行交互,包括使用包含文本、图像和操作按钮的简单文本或富卡

开发人员可以使用他们喜欢的编程语言(包括C#、JS、Python和Java)建模和构建复杂的对话,也可以使用Bot Framework Composer,这是一个开源的可视化创作画布,供开发人员和多学科团队设计和构建对话体验,包括语言理解、QNA Maker和BOT回复的复杂组合(Language Generation)

签出 Bot Framework ecosystem部分,了解与Bot Framework SDK相关的其他工具和服务的更多信息

快速链接

|Bot Framework Composer|C# Repo|JS Repo|Python Repo|Java Repo|BF CLI|

BOT框架SDK v4

Bot Framework SDK v4是一个open source SDK使开发人员能够使用他们最喜欢的编程语言建模和构建复杂的对话

C# JS python Java语言
稳定释放 packages packages packages packages
文档 docs docs docs docs
样本 .NET CoreWebAPI Node.jsTypeScriptes6 Python Java

通道和适配器

有两种方式可以将你的机器人连接到客户端体验:

  • Azure Bot服务频道-通过Azure Bot服务提供语言和SDK独立支持
  • BOT框架SDK适配器-每种语言适配器组件
客户端 蔚蓝通道 C#适配器 JS适配器 Python适配器
微软团队 Azure
直达线路 Azure
网络聊天 Azure Botkit
Skype Azure
电子邮件 Azure
Facebook Azure SDK Botkit
松弛 Azure SDK Botkit SDK
Kik Azure
电报 Azure
线路 Azure
GroupMe Azure
Twilio(短信) Azure SDK Botkit
Alexa技能 Community Community
谷歌行动 Community Community
Google Hangout Botkit
WebEx SDK Botkit
WhatsApp(Infobip) Community
缩放 Community
RingCentral Community
科尔塔纳 Azure
控制台 Community

社区开源项目

以下开放源码社区提供了各种组件来扩展您的bot应用程序,包括适配器、识别器、对话框和中间件

C# JavaScript python Java语言
Bot Framework Community C# JavaScript Python Java
Botkit JavaScript

问题和帮助

如果您对Bot Framework SDK或使用Azure Bot服务有任何疑问,我们鼓励您联系社区和Azure Bot服务开发团队寻求帮助

查看所有可用的支持选项here

问题和功能请求

我们在不同的位置跟踪Bot Framework SDK、工具和Azure Bot服务的功能问题和功能需求。如果您发现问题或有功能请求,请将问题提交到以下存储库

项目 描述 链接
SDK v4.NET 用于.NET、连接器、中间件、对话框、提示、Luis和QNA的核心bot运行时 File an issue
SDK v4 JavaScript 用于TypeScript/Javascript、连接器、中间件、对话框、提示符、Luis和QNA的核心bot运行时 File an issue
SDK v4 Python Python、连接器、中间件、对话框、提示、Luis和QNA的核心bot运行时 File an issue
SDK v4 Java 面向Java、连接器、中间件、对话框、提示、Luis和QNA的核心bot运行时 File an issue
BOT框架组合器 BOT框架合成器电子和Web应用程序 File an issue
BOT框架CLI BOT框架cli工具 File an issue
网络聊天 BOT框架网络聊天工具 File an issue

以前的版本

BOT框架生态系统

BOT框架组合器

Bot Framework Composer是一个集成开发工具,供开发人员和多学科团队使用Microsoft Bot Framework构建机器人和对话体验。在此工具中,您将找到构建复杂对话体验所需的一切

博基特

Botkit是一个开发人员工具和SDK,用于为主要消息传递平台构建聊天机器人、应用程序和自定义集成。僵尸机器人hear()触发器,ask()问题和say()回复。开发人员可以使用此语法构建对话框-现在可与最新版本的Bot Framework SDK交叉兼容

此外,botkit还附带了6个平台适配器,允许Javascript bot应用程序直接与消息传递平台通信:SlackWebex TeamsGoogle HangoutsFacebook MessengerTwilio,以及Web chat

botkit是Microsoft Bot Framework的一部分,在MIT Open Source license

BOT框架虚拟助手解决方案加速器

这个Bot Framework Solutions repository是世界上最大的Virtual Assistant Solution Accelerator,它提供了一组模板、解决方案加速器和技能,以帮助构建复杂的对话体验

  • Virtual Assistant.客户和合作伙伴非常需要为他们的品牌量身定做一个对话助手,为他们的用户量身定做,并且在各种画布和设备上都可以使用。

    这汇集了所有支持组件,并极大地简化了新BOT项目的创建,包括:基本对话意图、调度集成、QNA Maker、Application Insight和自动化部署

  • Skills.一个可重复使用的会话技能构建块库,使您可以向Bot添加功能。我们目前提供:日历,电子邮件,任务,兴趣点,汽车,天气和新闻技能。技能包括以源代码形式交付的Luis模型、对话框和集成代码,以便根据需要进行自定义和扩展
  • Analytics.使用Bot Framework Analytics解决方案获得对您的机器人的健康状况和行为的重要见解,其中包括:示例Application Insights查询和Power BI仪表板,以全面了解您的机器人与用户的对话

Azure Bot服务

Azure Bot服务使您能够托管完全拥有和控制您的数据的企业级智能机器人。开发者可以在Skype、微软团队、Cortana、网络聊天等平台上注册机器人并将其连接到用户。[Docs]

  • 直通JS客户端:如果您希望在Azure Bot服务中使用Direct Line频道,并且没有使用Webchat客户端,则可以在您的自定义应用程序中使用Direct Line JS客户端。[Readme]

  • 直接线路语音信道:我们正在将Bot框架和Microsoft的语音服务结合在一起,以提供一个通道,支持从客户端到BOT应用程序的双向流式语音和文本。若要注册,请向您的Azure Bot服务添加“Direct Line Speech”频道
  • 为您的Bot-Direct Line App服务扩展提供更好的隔离:Direct Line App Service Extension可以作为VNET的一部分进行部署,使IT管理员能够更好地控制会话流量,并由于减少了跳数而改善了会话延迟。单击此处开始使用Direct Line App Service Extension。VNET允许您在Azure中创建自己的私有空间,并且对您的云网络至关重要,因为它提供隔离、分段和其他主要优势

BOT框架仿真器

这个Bot Framework Emulator是一个跨平台的桌面应用程序,允许bot开发人员测试和调试使用Bot Framework SDK构建的bot。可以使用Bot Framework Emulator测试在计算机上本地运行的Bot或连接到远程运行的Bot。[Download latest|Docs]

BOT框架网络聊天

机器人框架Web Chat是Azure Bot服务的一个高度可自定义的基于Web的客户端聊天控件,它为用户提供了在网页中直接与你的机器人交互的功能。[Stable release|Docs|Samples]

BOT框架CLI

Bot Framework CLI工具托管open source跨平台Bot Framework CLI工具,旨在支持构建强大的端到端开发工作流。Bot Framework CLI工具取代了legacy standalone tools用于管理僵尸程序和相关服务。BF CLI将跨平台工具集合聚合到一个紧密一致的界面中

相关服务

语言理解

一种基于机器学习的服务,用于构建自然语言体验。快速创建可持续改进的企业就绪型定制模型。语言理解服务(Language Underming Service,Luis)允许您的应用程序用他们自己的话来理解他们想要的东西。[Docs|Add language understanding to your bot]

QNA制造商

QnA Maker是一种基于云的API服务,可在您的数据上创建会话问答层。使用QNA Maker,您可以在几分钟内根据FAQ URL、结构化文档、产品手册或编辑内容构建、培训和发布一个简单的问答机器人。[Docs|Add qnamaker to your bot]

派单

调度工具允许您构建语言模型,允许您在不同的组件(如QNA、Luis和自定义代码)之间进行调度。[Readme]

语音服务

语音服务将音频转换为文本,通过统一的语音服务进行语音翻译和文本到语音的转换。有了语音服务,你可以将语音集成到你的机器人中,创建自定义唤醒词,并用多种语言创作。[Docs]

适配卡

Adaptive Cards是一个开放标准,供开发人员以通用且一致的方式交换卡内容,并被Bot Framework开发人员用来创建出色的跨通道转换体验

  • 开放式框架,原生性能-简单的开放式卡格式支持共享工具的生态系统、应用程序之间的无缝集成以及任何设备上的本机跨平台性能
  • 从第一天起启用语音-我们生活在一个令人兴奋的时代,在这个时代,用户可以与他们的设备交谈。适配卡拥抱了这一新世界,并从头开始设计以支持这些新体验

贡献

请参阅我们的contributing guidelines

报告安全问题

安全问题和错误应通过电子邮件私下报告给Microsoft安全响应中心(MSRC),地址为secure@microsoft.com您应该会在24小时内收到回复。如果您由于某些原因没有收到您的邮件,请通过电子邮件跟进,以确保我们收到您的原始邮件。更多信息,包括MSRC PGP密钥,可以在Security TechCenter

版权所有(C)Microsoft Corporation。版权所有