Project Miyagi - 设想 Copilot stack 示例
“从客户体验开始,然后倒推技术” - 史蒂夫·乔布斯
“变化是唯一的不变” - 古代智慧
Project Miyagi 在一个 设想工作坊 中展示了 Microsoft 的 Copilot Stack,旨在设计、开发和部署企业级智能应用。通过探索生成的和传统的机器学习 用例,Miyagi 提供了一种体验式方法来开发注入 AI 的产品体验,提高生产力并实现超个性化。此外,该工作坊通过一些设计模式如链式思维和检索增强,以及技术如向量化进行长期记忆、优化开源模型、代理式编排、插件或工具来增强和基础化大型语言模型,向传统软件工程师介绍了新兴的提示工程设计模式。
注意
正在进行中。同时,请在 intelligentapp.dev 注册获取更新,并查看我们展示云原生、事件驱动微服务的生成 AI 能力的相关代码仓库:Azure/reddog-solutions。:tv: 欲了解预览,观看 Cosmos DB Live TV 的录音
该项目包括 Semantic Kernel、Promptflow、LlamaIndex、LangChain、向量存储(比如 Azure AI Search、 CosmosDB Postgres pgvector)和生成图像工具如 DreamFusion 和 ControlNet 的使用示例。此外,还包括来自 AzureML 的 Llama2 和 Phi-2 等优化基础模型。利用这个项目,您可以在现代化和转型应用时获得洞见,并利用您的私有数据优化自己的 Copilots。
该多语代码库依赖于众多微服务,使用我们的 Copilot stack 实现了多个 用例。它包括个性化金融教练、摘要和代理式编排的生成文本和图像。基于云原生事件驱动架构(EDA)骨干,设计和代码库确保企业级质量属性如可用性、可扩展性和可维护性。
踏上旅程,通过自助式工作坊将您的应用转变为前沿智能系统,发现未来的可能性。
部分实现
由于基础模型的迅速进步,我们正在实验文件夹中逐步实施 Miyagi 的用例。到目前为止,我们已经实现了以下内容:
- 具有个性化 (通过 Semantic Kernel 合成) 和在 Azure 容器应用上的聊天 MVP。
- 用于 GitHub Copilot Agent 的 VSCode 拓展
- Miyagi ChatGPT 插件
- Langchain 实体缓存的知识图谱记忆
- 通过 Langchain 的 Qdrant 向量存储
- 通过 Semantic Kernel 的技能调用 MS Graph API 意图
- Miyagi 提示设计的聊天交互 使用 LangChain 的 PromptTemplate
- Azure OpenAI GPT-3.5 基本流程
- 使用 GPT-3.5-turbo 和 Whisper-1 转录音频并演示少样本示例
- DeepSpeed Chat MiyagiGPT (带自有权重的 RLHF - 人类反馈强化学习) - 敬请关注
前端
与基础模型的交互不仅限于聊天。这个示例展示了一些用例
用于 GitHub Copilot Agent 的 VSCode 拓展
架构
高级逻辑架构
Miyagi 用例的 Semantic Kernel 架构
上下文学习流程
30k 英尺视角
典型的 AI 应用
Azure 中的 AI 应用
提示流
开源预训练基础模型
EDA + SK 流程的初步构想
使用 Dreambooth 的生成图像用例架构
技术栈
Copilot 栈
服务和能力
- Azure OpenAI
- Semantic Kernel
- LangChain
- LlamaIndex
- GitHub Copilot Agent
- AI Studio
- AI Search
- AI Speech
- AzureML PromptFlow
- TypeChat
- Kernel-memory
- AutoGen
- TaskWeaver
- Azure Functions
- APIM
- Service Bus
- Event Grid
- Logic Apps
- AKS / ACA
- Cosmos DB
- Github Actions
- Azure Monitor
- Azure DB for PostgreSQL
- Azure Redis Cache
- Azure Storage
贡献
本项目欢迎贡献和建议。大多数贡献要求您同意一份贡献者许可协议 (CLA),声明您有权且确实授予我们使用您的贡献的权利。详情请访问 https://cla.opensource.microsoft.com。
当您提交拉取请求时,CLA 机器人将自动确定您是否需要提供 CLA,并适当装饰 PR(例如,状态检查,评论)。只需按照机器人提供的指示操作即可。您只需要在所有使用我们 CLA 的仓库中执行一次此操作。
本项目采用了 Microsoft 开源行为准则。欲了解更多信息,请参阅 行为准则 FAQ 或联系 opencode@microsoft.com 以获得更多问题或意见。
免责声明
本软件仅用于演示目的。它不打算用于任何目的。软件的创建者不对本软件或其中包含的信息、产品、服务或相关图形的完整性、准确性、可靠性、适用性或可用性作任何形式的陈述或保证,无论是明示的还是暗示的。您对上述信息的任何依赖风险由您自己承担。
许可证
该软件仅用于演示目的。不得用于任何依赖用途。该软件按“原样”提供,不提供任何明示或暗示的担保。该软件不打算用于任何商业目的。该软件仅用于演示目的,不应用于任何其他目的。该软件不提供任何种类的担保,无论是明示的还是暗示的,包括但不限于适销性、特定用途适用性或非侵权的暗示担保。该软件按“原样”提供,不附带任何种类的担保。用户自行承担使用该软件的所有风险和责任。