Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este guia avançado aborda a forma como o índice semântico alimenta a Geração de Retrieval-Augmented (RAG) para fornecer respostas de IA precisas e conscientes do contexto. Exploramos a forma como estes conceitos funcionam em conjunto para garantir que o agente obtém informações relevantes dos seus dados e devolve respostas fundamentadas.
Advertências
Configuração
Configuração do Tipo de Contentor Necessária
DiscoverabilityDisabled
A discoverabilityDisabled propriedade controla se o Microsoft 365 pode detetar itens de unidade num tipo de contentor específico.
Se estiver a atualizar um tipo de contentor existente para definir esta propriedade como false, aguarde até 24 horas para que a alteração de configuração seja totalmente propagada antes de:
- A criar novos contentores,
- Carregar ficheiros para contentores ou
- Utilizar o agente SPE para interagir com pastas ou ficheiros.
Isto garante que o agente pode aceder e apresentar corretamente o conteúdo.
Eis um exemplo de como definir discoverabilityDisabledfalse como com Set-SPOContainerTypeConfiguration
Set-SPOContainerTypeConfiguration -ContainerTypeId 4f0af585-8dcc-0000-223d-661eb2c604e4 -DiscoverabilityDisabled $false
A deteção também pode ser desativada com a extensão Visual Studio Code SharePoint Embedded
Políticas CSP
O Content-Security-Policy (CSP) para anfitriões de chat incorporados garante que apenas os anfitriões especificados podem carregar o componente de chat. Especificamente, a CopilotEmbeddedChatHosts definição é utilizada num cabeçalho Content-Security-Policy como um frame-ancestors valor. Isto ajuda a proteger a aplicação ao restringir os domínios que podem incorporar o componente de chat.
O Administrador do SPE no inquilino proprietário pode definir esta definição com o Set-SPOContainerTypeConfiguration cmdlet :
# 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}
Observação
Se esta configuração não estiver definida, a Política de Segurança de Conteúdo está predefinida como frame-ancestors: "none", o que significa que ninguém pode incorporar o agente.
Um Administrador Do SharePoint Embedded num inquilino consumidor pode substituir os valores especificados pela aplicação proprietária, utilizando os cmdlets de inquilino que consomem:
-
Set-SPOApplication para definir a
CopilotEmbeddedChatHostspropriedade . -
Get-SPOApplication para obter a
CopilotEmbeddedChatHostspropriedade .
Observação
Uma substituição de inquilino consumidor tem de ser um subconjunto do que o inquilino proprietário configurou para CopilotEmbeddedChatHosts. Um administrador num inquilino consumidor não pode definir valores que o proprietário da aplicação não especificou para o tipo de contentor. As capacidades de substituição destinam-se a consumir administradores inquilinos para ativar o agente apenas num subconjunto de anfitriões definido pela aplicação proprietária.
Eis um exemplo de como um inquilino consumidor pode substituir a definição:
# 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}
Configuração Opcional
Autenticação e Cookies 3P
O iframe utilizado pelo agente do SharePoint Embedded autentica os utilizadores através de cookies de terceiros. Se os cookies de terceiros estiverem desativados no browser do utilizador, o iframe não pode ser autenticado automaticamente. Neste caso, um pop-up pede ao utilizador para iniciar sessão manualmente, garantindo que a autenticação ainda pode ser concluída.
Tópicos avançados
Âmbito da Aplicação
O âmbito da aplicação no agente Do SharePoint Embedded (agente SPE) envolve definir os limites e o contexto em que a ferramenta funciona, garantindo que as suas funcionalidades e capacidades são adaptadas para satisfazer as necessidades específicas de diferentes aplicações. Este processo ajuda a personalizar a funcionalidade do agente, tornando-a mais eficaz e relevante para vários casos de utilização.
Quando os utilizadores do agente SPE consultam o LLM, este só terá acesso aos ficheiros aos quais o Utilizador+Aplicação tem acesso. As permissões efetivas para a sessão do agente serão a interseção das permissões da sua aplicação Do SharePoint Embedded e das permissões do utilizador.
Arquitetura de Informações
Os ficheiros no SharePoint Embedded são naturalmente semânticos indexados. Este índice semântico sustenta fluxos de trabalho de geração aumentada (RAG) de obtenção ao fornecer contexto relevante do conteúdo armazenado no momento da consulta. Essencialmente, fundamenta as respostas de IA, garantindo que referenciam diretamente informações precisas nos seus contentores, em vez de dependerem apenas do conhecimento geral.
Com o agente Do SharePoint Embedded, pode obter mais informações sobre a resposta de modelos de linguagem grandes (LLM) em ficheiros específicos ou itens de unidade.
Índice semântico
Saiba mais sobre o índice semântico para Microsoft 365 Copilot aqui
O índice semântico permite pesquisas rápidas e precisas com base na semelhança de dados. Isto significa que pode encontrar as informações mais relevantes não só por correspondências exatas, mas também por compreender o contexto e o significado.
Retrieval-Augmented Generation (RAG)
O RAG permite-lhe referenciar materiais de origem relevantes armazenados num repositório no runtime. Os dados são obtidos a partir do índice e são utilizados para aumentar o pedido enviado para o modelo de linguagem grande (LLM). Alguns benefícios do RAG:
- Tratar as origens de dados como conhecimento sem ter de preparar o modelo
- Utiliza os resultados de pesquisa (obtenção) como contexto adicional no seu pedido
- Gera o resultado com o pedido e o contexto fornecido
O LLM utiliza os dados para informar e construir a resposta.
Terra
A base no contexto do agente SPE refere-se ao processo de fornecer origens de entrada ao modelo de linguagem grande (LLM) relacionado com o pedido do utilizador. Isto ajuda a melhorar a especificidade do pedido e garante que as respostas são relevantes e acionáveis para a tarefa específica do utilizador. Os dados em que o agente está ligado serão os conteúdos do tipo de contentor na aplicação do agente. Nos bastidores, o agente SPE utiliza Microsoft 365 Copilot. Saiba mais sobre Microsoft 365 Copilot arquitetura.
Âmbito do agente para conteúdo específico
O agente do SharePoint Embedded (SPE) tem a capacidade de restringir as origens de dados às quais tem acesso. O código de exemplo abaixo mostra os tipos de origem de dados disponíveis. Este exemplo mostra como configurar o 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'
}
Tipos de documento suportados para âmbito
Referência - Suporte de Formatos de Ficheiro Por copilot
Documentos: PDF, DOCX, XLSX, PPTX
Ficheiros baseados em texto: RTF, TXT, CSV, LOG, INI, CONFIG
Áudio: WAV
Linguagens de Programação: PY, JS, JSX, JAVA, PHP, CS, C, CPP, CXX, H, HPP, M, COFFEE, DART, LUA, PL, PM, RB, RS, SWIFT, GO, KT, KTS, R, SCALA, T, TS, TSX
Scripts da Shell: BASH, SH, ZSH
Markup e Documentação: HTML, CSS, MD, RMD, TEX, LATEX
Linguagens da Base de Dados: SQL
Formatos de Serialização de Dados: IPYNB, JSON, TOML, YAML, YML
Idioma/Região
O agente iframe carrega dinamicamente as definições de localização para garantir que a interface de chat é apresentada no idioma adequado. Estas definições derivam do SharePoint, que fornece um conjunto abrangente de opções de localização.
Quando o iframe do agente é inicializado, obtém as definições de localização atuais do SharePoint. Estas definições ditam o idioma e as preferências regionais para a interface de chat, garantindo que todos os elementos, mensagens e interações da IU são apresentados no idioma preferencial do utilizador.
Pode ter esta localização ao definir as opções de idioma nas definições da conta do SharePoint: Alterar as definições de idioma pessoal e região - Suporte da Microsoft.
Observação
Se a definição de idioma do M365 for diferente da definição de idioma da sua conta do SharePoint, a definição de idioma do M365 tem precedência. Pode alterar a definição de idioma do M365 aqui: Alterar o idioma de apresentação no Microsoft 365.
Uma opção de região adicional pode ser transmitida através do ChatLaunchConfig para definir ainda mais o idioma em que o agente responde:
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",
});
Opções de Região
Eis alguns exemplos de opções de região que pode utilizar:
| Código de Região | Nome Comum |
|---|---|
| af | Africâner |
| en-gb | Inglês (Reino Unido) |
| he | Hebraico |
| kok | Concani |
| nn-no | Norueguês (Nynorsk) |
| sr-latn-rs | Sérvio (latino, Sérvia) |
| am-et | Amárico |
| sd | Espanhol |
| Olá | Híndi |
| lb-lu | Luxemburguês |
| or-in | Odia (Índia) |
| sv | Sueco |
| ar | Árabe |
| es-mx | Espanhol (México) |
| hr | Croatian |
| lo | Lao |
| pa | Punjabi |
| ta | Tamil |
| as-in | Assamês |
| et | Estonian |
| hu | Húngaro |
| lt | Lithuanian |
| pl | Polonês |
| te | Telugu |
| az-Latn-az | Azerbaijão (Latim, Azerbaijão) |
| eu | Basque |
| hy | Armênio |
| lv | Latvian |
| pt-br | Português (Brasil) |
| th | Tailandês |
| bg | Bulgarian |
| fa | Persa |
| id | Indonésio |
| mi-nz | Maori (Nova Zelândia) |
| pt-pt | Português (Portugal) |
| tr | Turco |
| bs-latn-ba | Bósnio (Latim, Bósnia e Herzegovina) |
| fi | Finnish |
| é | Islandês |
| mk | Macedônio |
| quz-pe | Quíchua (Peru) |
| tt | Tártaro |
| ca-es-valencia | Catalão (Valência) |
| fil-ph | Filipino (Filipinas) |
| it | Italiano |
| ml | Malaiala |
| ro | Romeno |
| ug | Uyghur |
| ca | Catalão |
| fr-ca | Francês (Canadá) |
| ja | Japonês |
| sr. | Marata |
| ru | Russo |
| uk | Ucraniano |
| cs | Tcheco |
| fr | Francês |
| ka | Georgiano |
| ms | Malay |
| sk | Slovak |
| o seu | Urdu |
| cy-gb | Galês (Reino Unido) |
| ga-ie | Irlandês (Irlanda) |
| kk | Cazaque |
| mt-mt | Maltês (Malta) |
| sl | Esloveno |
| uz-latn-uz | Usbeque (Latim, Usbequistão) |
| da | Dinamarquês |
| gd | Gaélico Escocês |
| km-kh | Khmer (Cambodja) |
| nb-no | Norueguês (Bokmål) |
| sq | Albanês |
| vi | Vietnamese |
| de | Alemão |
| gl | Galician |
| kn | Kannada |
| np-ne | Nepalês (Nepal) |
| sr-cyrl-ba | Sérvio (Cirílico, Bósnia e Herzegovina) |
| zh-cn | Chinês (simplificado) |
| el | Grego |
| gu | Gujarati |
| ko | Coreano |
| nl | Holandês |
| sr-cyrl-rs | Sérvio (cirílico, Sérvia) |
| zh-tw | Chinês (tradicional) |