Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aviso
A funcionalidade de Pesquisa de Texto do Kernel Semântico está em pré-visualização, e melhorias que exigem alterações de quebra ainda podem ocorrer em circunstâncias limitadas antes do lançamento.
Descrição geral
A implementação da Pesquisa de texto do Google usa a Pesquisa personalizada do Google para recuperar os resultados da pesquisa. Você deve fornecer sua própria chave de api de pesquisa do Google e ID do mecanismo de pesquisa para usar esse componente.
Limitações
Área de funcionalidades | Suporte |
---|---|
API de Pesquisa | Apenas API de Pesquisa Personalizada do Google. |
Cláusulas de filtro suportadas | Apenas cláusulas de filtro "igual a" são suportadas. |
Teclas de filtro suportadas | Os seguintes parâmetros são suportados: "cr", "dateRestrict", "exactTerms", "excludeTerms", "filter", "gl", "hl", "linkSite", "lr", "orTerms", "rights", "siteSearch". Para obter mais informações, consulte parâmetros. |
Gorjeta
Siga este link para obter mais informações sobre como a pesquisa é realizada
Introdução
O exemplo abaixo mostra como criar um GoogleTextSearch
e usá-lo para executar uma pesquisa de texto.
using Google.Apis.Http;
using Microsoft.SemanticKernel.Data;
using Microsoft.SemanticKernel.Plugins.Web.Google;
// Create an ITextSearch instance using Google search
var textSearch = new GoogleTextSearch(
initializer: new() { ApiKey = "<Your Google API Key>", HttpClientFactory = new CustomHttpClientFactory(this.Output) },
searchEngineId: "<Your Google Search Engine Id>");
var query = "What is the Semantic Kernel?";
// Search and return results as string items
KernelSearchResults<string> stringResults = await textSearch.SearchAsync(query, new() { Top = 4, Skip = 0 });
Console.WriteLine("——— String Results ———\n");
await foreach (string result in stringResults.Results)
{
Console.WriteLine(result);
}
// Search and return results as TextSearchResult items
KernelSearchResults<TextSearchResult> textResults = await textSearch.GetTextSearchResultsAsync(query, new() { Top = 4, Skip = 4 });
Console.WriteLine("\n——— Text Search Results ———\n");
await foreach (TextSearchResult result in textResults.Results)
{
Console.WriteLine($"Name: {result.Name}");
Console.WriteLine($"Value: {result.Value}");
Console.WriteLine($"Link: {result.Link}");
}
// Search and return results as Google.Apis.CustomSearchAPI.v1.Data.Result items
KernelSearchResults<object> fullResults = await textSearch.GetSearchResultsAsync(query, new() { Top = 4, Skip = 8 });
Console.WriteLine("\n——— Google Web Page Results ———\n");
await foreach (Google.Apis.CustomSearchAPI.v1.Data.Result result in fullResults.Results)
{
Console.WriteLine($"Title: {result.Title}");
Console.WriteLine($"Snippet: {result.Snippet}");
Console.WriteLine($"Link: {result.Link}");
Console.WriteLine($"DisplayLink: {result.DisplayLink}");
Console.WriteLine($"Kind: {result.Kind}");
}
Brevemente
Mais em breve.
Brevemente
Mais em breve.
Próximos passos
As seções a seguir da documentação mostram como:
- Crie um plugin e use-o para Retrieval Augmented Generation (RAG).
- Use a pesquisa de texto juntamente com a chamada de função.
- Saiba mais sobre como usar repositórios vetoriais para pesquisa de texto.