Azure - 尝试创建并使用一下Azure AI Search

1. 简单介绍

我们可以使用Azure AI Search作为向量的存储库,同时Azure AI Search也提供了keyword search, vector search和Hybrid search等功能。在Azure AI Search中有Index,Indexer, Skillset, Scale, Semantic Ranker等概念,具体的内容可以参考微软的mslearn文章

这边将尝试去创建一个Azure AI Search并以Rag的方式使用一下

  1. 在Azure portal 的Azure AI Foundry界面中,选择左侧的AI Search菜单,然后点击Create按钮,
  1. 在Create a search service界面中,选择subscription和pricing tier,同时设定search name,

note, 不同的pricing tier对应不同的capacity,费用也不同的。

  1. 最后在review界面中,点击create按钮,

4)最后创建成功

  1. 在Azure AI Search界面中,点击import data(new)按钮,
  1. 在Choose a data source界面中,选择Azure Blob Storage选项,
  1. 点击RAG选项,如下图所示,
  1. 在Connect to your data 界面中,选择Storage account和Blob container

note, 这边假定已经创建了一个Azure blob storage,用于存放resumes,

  1. 在Vectorize your text界面,选择Azure OpenAI service和embeding model,这边在Authentication type中选择的是API key,
  1. 下面的界面没有设置值,当前这边没有用的OCR等Azure AI Skillset,
  1. 在Advance settings中,选择Enable semantic ranker
  1. 在review and create界面中,点击Create按钮,
  1. 弹出如下界面,表示创建成功了,
  1. 在创建的Azure AI Search index 的 Fields界面中,发现有vector field 产生,
  1. 在Search explorer中,直接点击Search按钮,发现有内容返回

2.3 记录配置信息

创建好Azure AI Search之后,需要记录一下Azure AI Search对应的endpoint和key,

  1. Endpoint信息,

​​​​​​​

  1. key信息,

3. 制作Custom Engine Agent

3.1 创建项目

  1. 假定在VSCode中已经安装了Microsoft 365 Agents Toolkit,以前的名字是Teams Toolkit,
  1. 创建了一个Custom Engine Agent,
  1. 选择 Basic AI Chatbot,
  1. 选择Typescript语言,
  1. 配置Azure Open AI key, endpoint等信息
  1. 最后创建了一个Custom Agent,如下图所示,

7)定制项目并配置Azure AI Search的endpoint, key, index name, embeding model等信息,

3.2 运行项目

  1. 在VSCode的项目中,点击RUN AND DEBUG下拉框,选择Debug in Teams(Desktop)并运行,
  1. 启动项目的过程中会弹出下面的提示窗,点击Continue按钮,
  1. 在弹出的如下Teams App窗口中,点击Add按钮,
  1. 在下面的界面中,点击Open按钮,
  1. 最后输入想提问的问题,bot会通过Azure AI Search的vector search进行内容检索,并将检索结果提供给Azure Open AI作为上下文, 最后返回内容给bot同时bot返回内容给用户,如下图所示,

4. 总结

本文记录了一下创建Azure AI Search并以RAG的方式来使用Azure AI Search的过程。在别的Vector storage中也有和Azure AI Search对应的概念的,比如Qdrant中Collection对应的是AI Search中的Index,Payload对应的是Fields等。不过相对其他的RAG解决方案,Azure AI Search的可拓展性可能比较强一些,支持partion和replicas的两种拓展方式。更加详细的内容,还可以参考微软的mslearn文章​​​​​​​。

本文如果哪里有错误,麻烦告之,谢谢谢谢!

相关推荐
专注VB编程开发20年13 小时前
c#语法和java相差多少
java·开发语言·microsoft·c#
AI架构师易筋13 小时前
模型上下文协议(MCP)完全指南:从AI代理痛点到实战开发
人工智能·microsoft·语言模型·llm·mcp
小北方城市网14 小时前
鸿蒙6.0:AI与智能体框架(HMAF),重塑操作系统未来的核心密码
大数据·网络·人工智能·microsoft·ai·智能手机
czhc114007566314 小时前
c# 1216
windows·microsoft·c#
CES_Asia16 小时前
资本赋能实体智能——2026 CES Asia机器人产业投资峰会定档北京
大数据·人工智能·microsoft·机器人
模型启动机16 小时前
微软确认:Windows 11 AI 智能体访问用户文件前会先请求许可
人工智能·microsoft·ai·大模型
一个帅气昵称啊17 小时前
.Net——AI智能体开发基于 Microsoft Agent Framework 实现第三方聊天历史存储
人工智能·microsoft·.net
武藤一雄18 小时前
C#中常见集合都有哪些?
开发语言·微软·c#·.net·.netcore
武藤一雄2 天前
.NET 中常见计时器大全
microsoft·微软·c#·.net·wpf·.netcore
董世昌412 天前
你对面向对象编程的理解,面向过程和面向对象有什么区别?
microsoft