Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом расширенном руководстве описывается, как семантический индекс обеспечивает Retrieval-Augmented генерации (RAG) для предоставления точных и контекстных ответов ИИ. Мы изучаем, как эти концепции работают вместе, чтобы агент извлекал важную информацию из ваших данных и возвращал обоснованные ответы.
Предостережения
Конфигурация
Необходимая конфигурация типа контейнера
ОбнаружениеРаспределение
Свойство discoverabilityDisabled
определяет, может ли Microsoft 365 обнаруживать элементы диска в определенном типе контейнера.
Если вы обновляете существующий тип контейнера, чтобы присвоить этому свойству false
значение , предоставьте до 24 часов полного распространения изменения конфигурации, прежде чем:
- Создание новых контейнеров,
- Отправка файлов в контейнеры или
- Использование агента SPE для взаимодействия с папками или файлами.
Это гарантирует, что агент может правильно получить доступ к содержимому и открыть его.
Ниже приведен пример того, как задать discoverabilityDisabled
значение false
с помощью Set-SPOContainerTypeConfiguration.
Set-SPOContainerTypeConfiguration -ContainerTypeId 4f0af585-8dcc-0000-223d-661eb2c604e4 -DiscoverabilityDisabled $false
Возможность обнаружения также можно отключить с помощью расширения SharePoint Embedded Visual Studio Code
Политики CSP
Content-Security-Policy (CSP) для внедренных узлов чата гарантирует, что только указанные узлы могут загружать компонент чата. В частности, CopilotEmbeddedChatHosts
параметр используется в заголовке Content-Security-Policy в frame-ancestors
качестве значения. Это помогает защитить приложение, ограничивая домены, которые могут внедрять компонент чата.
Администратор SPE в арендаторе-владельце может задать этот параметр с помощью командлета Set-SPOContainerTypeConfiguration
:
# Note this MUST be run in Windows PowerShell. It will not work in PowerShell.
Import-Module -Name "Microsoft.Online.SharePoint.PowerShell"
Connect-SPOService "https://<domain>-admin.sharepoint.com"
# Login with your admin account.
# ...
Set-SPOContainerTypeConfiguration -ContainerTypeId XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX -CopilotEmbeddedChatHosts @("http://localhost:3000", "https://contoso.sharepoint.com", "https://fabrikam.com")
# This will set the container type configuration “CopilotEmbeddedChatHosts” accordingly.
# Replication of this configuration on consuming tenants can take up to 24 hours
# ...
# Confirm setting value
Get-SPOContainerTypeConfiguration -ContainerTypeId XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
# On a consuming tenant, you may confirm the setting value as follows
Get-SPOApplication -OwningApplicationId <OwningApplicationId> | Select-Object CopilotEmbeddedChatHosts
OwningApplicationId : <OwningApplicationId>
OwningApplicationName : SharePoint Embedded App
Applications : {<OwningApplicationId>}
CopilotEmbeddedChatHosts : {http://localhost:3000, https://contoso.sharepoint.com, https://fabrikam.com}
Примечание.
Если эта конфигурация не задана, для параметра Content-Security-Policy по умолчанию задано значение frame-предки: "none", что означает, что никто не может внедрить агент.
Администратор SharePoint Embedded в потребляемом клиенте может переопределить значения, заданные собственным приложением, с помощью командлетов клиента:
-
Set-SPOApplication , чтобы задать
CopilotEmbeddedChatHosts
свойство. -
Get-SPOApplication для получения
CopilotEmbeddedChatHosts
свойства.
Примечание.
Переопределение потребляющего клиента должно быть подмножеством того, что клиент-владеющий настроен для CopilotEmbeddedChatHosts
. Администратор в используемом клиенте не может задать значения, которые владелец приложения не указал для типа контейнера. Возможности переопределения предназначены для использования администраторами клиента, чтобы включить агент только в подмножестве узлов, определенных приложением-владельцем.
Ниже приведен пример того, как потребляющий клиент может переопределить параметр:
# Note this MUST be run in Windows PowerShell. It will not work in PowerShell.
Import-Module -Name "Microsoft.Online.SharePoint.PowerShell"
Connect-SPOService "https://<domain>-admin.sharepoint.com"
# Login with your admin account.
# ...
Set-SPOApplication -OwningApplicationId XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX -CopilotEmbeddedChatHosts @("https://contoso.sharepoint.com", "https://fabrikam.com")
# This will set the container type configuration “CopilotEmbeddedChatHosts” accordingly
# Note that @("https://contoso.sharepoint.com", "https://fabrikam.com") is a subset of what we defined in the owning tenant
# Those values were @("http://localhost:3000", "https://contoso.sharepoint.com", "https://fabrikam.com")
# Confirm the configuration
Get-SPOApplication -OwningApplicationId <OwningApplicationId> | Select-Object CopilotEmbeddedChatHosts
OwningApplicationId : <OwningApplicationId>
OwningApplicationName : SharePoint Embedded App
Applications : {<OwningApplicationId>}
CopilotEmbeddedChatHosts : {https://contoso.sharepoint.com, https://fabrikam.com}
Необязательная конфигурация
Проверка подлинности и файлы cookie 3P
Объект , используемый iframe
агентом SharePoint Embedded, проверяет подлинность пользователей с помощью сторонних файлов cookie. Если сторонние файлы cookie отключены в браузере пользователя, iframe не сможет пройти проверку подлинности автоматически. В этом случае всплывающее окно предлагает пользователю войти вручную, гарантируя, что проверка подлинности по-прежнему может быть завершена.
Дополнительные статьи
Область приложения
Определение области приложений в агенте SharePoint Embedded (агент SPE) включает определение границ и контекста, в пределах которых работает средство, гарантируя, что его функции и возможности адаптированы для удовлетворения конкретных потребностей различных приложений. Этот процесс помогает настроить функциональные возможности агента, что делает его более эффективным и актуальным для различных вариантов использования.
Когда пользователи агента SPE запрашивают LLM, он будет иметь доступ только к тем файлам, к которым у пользователя и приложения есть доступ. Действующие разрешения для сеанса агента будут пересечением разрешений вашего приложения SharePoint Embedded и разрешений пользователя.
Информационная архитектура
Файлы в SharePoint Embedded естественным образом индексируются семантикой. Этот семантический индекс лежит в основе рабочих процессов получения дополненного поколения (RAG), предоставляя соответствующий контекст из хранимого содержимого во время запроса. По сути, он определяет ответы ИИ, гарантируя, что они напрямую ссылаются на точную информацию в контейнерах, а не только на общие знания.
С помощью агента SharePoint Embedded можно дополнительно заземлить ответ больших языковых моделей (LLM) для определенных файлов или элементов диска.
Семантический индекс
Дополнительные сведения о семантическом индексе для Microsoft 365 Copilot см. здесь.
Семантический индекс позволяет выполнять быстрый и точный поиск на основе сходства данных. Это означает, что он может найти наиболее релевантную информацию не только по точным совпадениям, но и по пониманию контекста и смысла.
Создание Retrieval-Augmented (RAG)
RAG позволяет ссылаться на соответствующие исходные материалы, хранящиеся в репозитории во время выполнения. Данные извлекаются из индекса и используются для дополнения запроса, отправляемого в большую языковую модель (LLM). Некоторые преимущества RAG:
- Обработка источников данных как знаний без необходимости обучения модели
- Использует результаты поиска (извлечения) в качестве дополнительного контекста в запросе
- Создает выходные данные с помощью запроса и предоставленного контекста.
LLM использует данные для информирования и создания ответа.
Граундинг
Заземление в контексте агента SPE относится к процессу предоставления источников входных данных для крупной языковой модели (LLM), связанной с запросом пользователя. Это помогает улучшить специфику запроса и гарантирует, что ответы будут релевантными и применимыми для конкретной задачи пользователя. Данные, на которые создается агент, будут содержимым типа контейнера в приложении агента. В фоновом режиме агент SPE использует Microsoft 365 Copilot. Дополнительные сведения об архитектуре Microsoft 365 Copilot.
Определение конкретного содержимого агента
Агент SharePoint Embedded (SPE) может ограничивать источники данных, к которым у него есть доступ. В приведенном ниже примере кода показаны доступные типы источников данных. В этом примере показано, как настроить пакет SDK.
export type IDataSourcesProps =
| IFileDataSource
| IFolderDataSource
| IDocumentLibraryDataSource
| ISiteDataSource
| IWorkingSetDataSource
| IMeetingDataSource;
export enum DataSourceType {
File = 'File',
Folder = 'Folder',
DocumentLibrary = 'DocumentLibrary',
Site = 'Site',
WorkingSet = 'WorkingSet',
Meeting = 'Meeting'
}
Поддерживаемые типы документов для определения области
Справочник. Поддержка форматов файлов от copilot
Документы: PDF, DOCX, XLSX, PPTX
Текстовые файлы: RTF, TXT, CSV, LOG, INI, CONFIG
Аудио: WAV
Языки программирования: PY, JS, JSX, JAVA, PHP, CS, CPP, CXX, H, HPP, M, COFFEE, DART, LUA, PL, PM, RB, RS, SWIFT, GO, KT, KTS, R, SCALA, T, TS, TSX
Скрипты оболочки: BASH, SH, ZSH
Разметка и документация: HTML, CSS, MD, RMD, TEX, LATEX
Языки баз данных: SQL
Форматы сериализации данных: IPYNB, JSON, TOML, YAML, YML
Язык или языковой стандарт
Агент iframe
динамически загружает параметры локализации, чтобы интерфейс чата отображался на соответствующем языке. Эти параметры являются производными от SharePoint, которая предоставляет полный набор вариантов локализации.
При инициализации iframe агента он получает текущие параметры локализации из SharePoint. Эти параметры определяют язык и региональные параметры интерфейса чата, обеспечивая отображение всех элементов пользовательского интерфейса, сообщений и взаимодействий на предпочитаемом языке пользователя.
Это можно локализовать, задав языковые параметры в параметрах учетной записи SharePoint. Измените параметры личного языка и региона служба поддержки Майкрософт.
Примечание.
Если параметр языка M365 отличается от параметра языка учетной записи SharePoint, приоритет имеет параметр языка M365. Вы можете изменить язык M365 в разделе Изменение языка интерфейса в Microsoft 365.
Дополнительный параметр языкового стандарта можно передать через , ChatLaunchConfig
чтобы дополнительно задать язык, на который отвечает агент:
const [chatConfig] = React.useState<ChatLaunchConfig>({
header: ChatController.instance.header,
theme: ChatController.instance.theme,
zeroQueryPrompts: ChatController.instance.zeroQueryPrompts,
suggestedPrompts: ChatController.instance.suggestedPrompts,
instruction: ChatController.instance.pirateMetaPrompt,
locale: "en",
});
Параметры языкового стандарта
Ниже приведены некоторые примеры параметров языкового стандарта, которые можно использовать:
Код языкового стандарта | Общее имя |
---|---|
af | Африкаанс |
en-gb | Английский (Великобритания) |
he | Иврит |
kok | Конкани |
nn-no | Норвежский (нюнорск) |
sr-latn-rs | Сербский (латиница, Сербия) |
am-et | Амхарский |
es | испанский; |
hi | Хинди |
lb-lu | Люксембургский |
or-in | Одия (Индия) |
sv | шведский; |
ar | Арабский |
es-mx | Испанский (Мексика) |
hr | Хорватский |
вот | Лаосский |
pa | Панджаби |
ta | Тамильский |
as-in | Ассамский |
et | Эстонский |
hu | венгерский; |
lt | Литовский |
pl | польский; |
te | Телугу |
az-latn-az | Азербайджанский (латиница, Азербайджан) |
eu | Basque |
hy | Армянский |
lv | Латышский |
pt-br | Португальский (Бразилия) |
th | Тайский |
bg | Болгарский |
fa | Персидский |
id | индонезийский; |
mi-nz | Маори (Новая Зеландия) |
pt-pt | Португальский (Португалия) |
tr | турецкий; |
bs-latn-ba | Боснийский (латиница, Босния и Герцеговина) |
fi | финский; |
есть | Исландский |
mk | Македонский |
quz-pe | Кечуа (Перу) |
tt | Татарский |
ca-es-valencia | Каталанский (валенсийский) |
fil-ph | Филиппинский (Филиппины) |
it | итальянский; |
ml | Малаялам |
ro | румынский; |
ug | Уйгурский |
ca | каталанский; |
fr-ca | Французский (Канада) |
ja | японский; |
mr | Маратхи |
ru | русский; |
uk | Украинский |
cs | чешский; |
fr | французский; |
ka | Грузинский |
ms | Malay |
sk | Словацкий |
ur | Урду |
cy-gb | Валлийский (Великобритания) |
ga-ie | Ирландский (Ирландия) |
kk | Казахский |
mt-mt | Мальтийский (Мальта) |
sl | Словенский |
uz-latn-uz | Узбекский (латиница, Узбекистан) |
da | датский; |
gd | Шотландский гэльский |
км-х | Кхмерский (Камбоджа) |
nb-no | норвежский (букмол); |
sq | Албанский |
vi | Вьетнамский |
de | немецкий; |
gl | Galician |
kn | Каннада |
ne-np | Непальский (Непал) |
sr-cyrl-ba | Сербский (кириллица, Босния и Герцеговина) |
zh-cn | Китайский (упрощенное письмо) |
el | греческий; |
gu | Гуджарати |
ko | Корейский |
nl | голландский; |
sr-cyrl-rs | Сербский (кириллица, Сербия) |
zh-tw | Китайский (традиционное письмо) |