A página Q&A Test no console do OpenSearch LLM-Based Conversational Search Edition verifica como sua base de conhecimento responde às perguntas. Após inserir uma pergunta, o modelo identifica os resultados mais relevantes e retorna uma resposta. Configure os parâmetros para o seu cenário e os resultados esperados, teste os resultados de Q&A e selecione os valores de parâmetro ideais.
Pré-requisitos
Uma instância do OpenSearch LLM-Based Conversational Search Edition. Para instruções, consulte Create an instance.
Configuração de dados concluída para a instância. Para instruções, consulte Configure data.
Procedimento
Este procedimento usa um arquivo de vídeo como exemplo. Faça upload do vídeo para a base de conhecimento, aguarde a análise automática e execute um teste de Q&A com base no conteúdo do vídeo para retornar os resultados relevantes.
Importe o arquivo para a base de conhecimento
Importe o arquivo de vídeo para que a base de conhecimento analise seu conteúdo.
Acesse o console do OpenSearch e selecione LLM-Based Conversational Search Edition.
No painel de navegação à esquerda, clique em Instance Management.
Na coluna Actions da instância desejada, clique em Manage. A página Instance Details é exibida.
Clique em Configuration Center e abra Data Configuration.
Clique em File Import e selecione o arquivo a ser carregado.
Clique em Upload File. O arquivo é importado para a base de conhecimento.
Aguarde a conclusão do upload. Não prossiga enquanto o status de consulta de dados não estiver completo.
Execute um teste de Q&A
Após a análise do arquivo, faça uma pergunta ao modelo e ajuste os parâmetros até que as respostas atendam às suas expectativas.
No painel de navegação à esquerda, clique em Q&A Test.
No canto superior direito, clique em Model Configuration e defina os parâmetros exigidos pelo seu cenário de busca.
Insira a pergunta na caixa de diálogo e clique em Send.
Visualize os resultados do teste de Q&A. O modelo identifica os resultados mais relevantes a partir do conteúdo da base de conhecimento carregada e retorna uma resposta. Conforme os parâmetros configurados, a resposta também pode incluir os documentos recuperados (
search_hits) e as fontes do conteúdo referenciado.
Parâmetros
Configure os parâmetros a seguir em Model Configuration na página Q&A Test. Os parâmetros estão agrupados por categoria.
Parâmetros de Q&A
| Parameter | Type | Required | Default value | Valid values | Description |
| options.chat.model | String | Yes | opensearch-qwen | Seleciona o modelo de linguagem de grande escala (LLM). O comprimento de contexto suportado e as contagens máximas de tokens de entrada e saída variam conforme o modelo. | |
| Prompt | String | No | System default template | - | O prompt utilizado nesta busca. Para os prompts disponíveis, consulte Available prompts. |
| question.session | Boolean | No | true | true, false |
|
| options.chat.enable_deep_search | Boolean | No | false | true, false | Ativa o Deep search.
|
| options.retrieve.web_search.enable | Boolean | No | false | true, false | Ativa a busca na web.
|
| options.chat.stream | Boolean | No | true | true, false | Ativa respostas em modo streaming.
|
Parâmetros de prompt
| Parameter | Type | Required | Default value | Valid values | Description |
| options.chat.prompt_config.attitude | String | No | normal | normal, polite, patience | Parâmetro do modelo de sistema integrado que controla o tom da conversa.
|
| options.chat.prompt_config.rule | String | No | detailed | detailed, stepbystep | O nível de detalhamento da conversa.
|
| options.chat.prompt_config.noanswer | String | No | sorry | sorry, uncertain | A resposta quando uma pergunta não pode ser respondida.
|
| options.chat.prompt_config.language | String | No | Chinese | Chinese, English, Thai, Korean | O idioma utilizado para responder às perguntas. |
| options.chat.prompt_config.role | Boolean | No | - | - | Define se um papel de resposta deve ser ativado. Quando ativo, o papel de resposta é personalizado. |
| options.chat.prompt_config.role_name | String | No | - | - | O papel de resposta personalizado. Por exemplo: AI Assistant. |
| options.chat.prompt_config.out_format | String | No | text | text, table, list, markdown | O formato do conteúdo de saída. |
Parâmetros de recuperação de documentos
| Parameter | Type | Required | Default value | Valid values | Description |
| options.retrieve.doc.filter | String | No | Empty | - | Ao recuperar dados que atendam a condições de filtro da base de conhecimento, especifique explicitamente o campo e as condições. Para exemplos de filtros, consulte Filter examples. Campos suportados:
|
| options.retrieve.doc.top_n | Integer | No | 5 | (0, 50] | O número de documentos recuperados. |
| options.retrieve.doc.sf | Float | No | 1.3 when sparse vectors are disabled 0,35 when sparse vectors are enabled | [0, 2,0] when sparse vectors are disabled | Controla o limiar de pontuação vetorial para recuperação de documentos.
|
| options.retrieve.doc.dense_weight | Float | No | 0.7 | (0.0, 1.0) | Quando vetores esparsos estão ativados, controla o peso dos vetores densos durante a recuperação de documentos. |
| options.retrieve.doc.formula | String | No | - | - | Especifica a fórmula de classificação de documentos durante a recuperação. Para a sintaxe, consulte Ranking formula syntax. Os recursos Algorithm relevance e Geographical relevance não são suportados. |
| options.retrieve.doc.operator | String | No | AND | AND, OR | Define a relação entre os termos após a tokenização de
|
Os exemplos a seguir mostram o formato de options.retrieve.doc.filter:
"filter" : "raw_pk=\"123\"" # Retrieve data only from the document whose ID is 123
"filter" : "category=\"value1\"" # Retrieve data only from documents whose category is value1
"filter" : "category=\"value1\" OR category=\"value2\"" # Retrieve data only from documents whose category is value1 or value2
"filter" : "score>1.0" # Retrieve data only from documents whose score is greater than 1.0
"filter" : "timestamp>1356969600" # Retrieve data only from documents whose timestamp is later than 2013-1-1
Parâmetros de imagem de referência
| Parameter | Type | Required | Default value | Valid values | Description |
| options.retrieve.image.sf | Float | No | 1 when sparse vectors are disabled 0,5 when sparse vectors are enabled | [0, 2,0] when sparse vectors are disabled | Controla o limiar de pontuação vetorial para recuperação de imagens.
|
| options.retrieve.image.dense_weight | Float | No | 0.7 | (0.0, 1.0) | Quando vetores esparsos estão ativados, controla o peso dos vetores densos durante a recuperação de imagens. |
Parâmetros de compreensão de consulta
| Parameter | Type | Required | Default value | Valid values | Description |
| options.retrieve.qp.query_extend | Boolean | No | false | true, false | Define se a consulta do usuário deve ser expandida. As consultas expandidas são usadas para recuperar fragmentos de documentos do motor de busca.
|
| options.retrieve.qp.query_extend_num | Integer | No | 5 | (0,+∞) | O número máximo de consultas a expandir quando a expansão por consultas similares está ativa. |
Parâmetros de intervenção manual
|
Parameter |
Type |
Required |
Default value |
Valid values |
Description |
|
options.retrieve.entry.sf |
Float |
No |
0,3 |
[0, 2,0] |
Controla o limiar de pontuação vetorial para recuperação de entradas de intervenção manual. Um valor menor torna os resultados mais relevantes, mas retorna menos resultados. Em contrapartida, entradas menos relevantes podem ser recuperadas. |
Parâmetros de busca profunda
| Parameter | Type | Required | Default value | Valid values | Description |
| options.chat.agent.think_process | Boolean | No | - | - | Define se o processo de raciocínio deve ser retornado. |
| options.chat.agent.max_think_round | Integer | No | - | - | O número de rodadas de raciocínio. O valor máximo é 20. |
| options.chat.agent.language | String | No | - | AUTO, CN, EN | O idioma para o processo de raciocínio e as respostas.
|
Outros parâmetros
| Parameter | Type | Required | Default value | Valid values | Description |
| options.retrieve.return_hits | Boolean | No | - | - | Define se os resultados de recuperação de documentos devem ser retornados, representados como search_hits na resposta. |
| options.chat.history_max | Integer | No | 1 | - | O número máximo de rodadas do histórico de conversas com múltiplos turnos. O valor máximo é 20. |
| options.chat.link | Boolean | No | false | true, false | Define se links devem ser retornados. Controla se o conteúdo gerado pelo modelo identifica as fontes das referências de conteúdo.
|
| options.chat.rich_text_strategy | String | No | Empty | inside_response, extend_response | Especifica o método de pós-processamento para saída de LLM em rich text. Caso esta configuração não exista ou esteja vazia, o rich text não é ativado, que é o comportamento padrão:
|
| options.retrieve.graph | Boolean | No | - | - | Usa relações de grafo para associação e recuperação de consultas. Este parâmetro só tem efeito após a ativação do GraphRAG na configuração de dados. |
| options.chat.enable_llm_knowledge | Boolean | No | - | true, false | Quando ativado, o LLM fornece uma resposta alternativa caso nenhum resultado de busca seja retornado. |
Quando options.chat.link é definido como true, um exemplo de resposta que inclui as fontes é o seguinte:
An ECS cloud disk can be expanded online or offline[^1^]. Online expansion does not require restarting the instance, whereas offline expansion does[^1^]. To expand the disk, select the disk to expand in the ECS console, choose Expand in the Actions column, and then select an expansion method as needed[^1^]. If partitions and file systems also need to be expanded, use the console or use the console[^2^]. After the disk capacity is expanded, the new capacity cannot be reduced after it takes effect. Plan storage space appropriately[^3^].
O número entre [^ e ^] indica o número ordinal do documento nos resultados de referência. Por exemplo, [^1^] indica o primeiro documento na referência.
Próximas etapas
Você também pode executar o teste de Q&A por meio de API e SDK.