Method: answerQuery

Temellendirilmiş üretim kullanarak bir sorguyu yanıtlar.

HTTP isteği

POST https://developerknowledge.googleapis.com/v1alpha:answerQuery

URL, gRPC Kod Dönüştürme söz dizimini kullanır.

İstek metni

İstek içeriği aşağıdaki yapıyla birlikte verileri içerir:

JSON gösterimi
{
  "query": string,
  "filter": string
}
Alanlar
query

string

Zorunlu. Yanıtlanacak sorgu.

filter

string

İsteğe bağlı. Yanıtı temellendirmek için kullanılan arama sonuçlarına katı bir filtre uygular. İfade, https://google.aip.dev/160 adresinde açıklanan söz diziminin bir alt kümesini destekler.

Filtreleme için desteklenen alanlar:

  • contentLengthBytes (INTEGER): Document.content alanının bayt cinsinden uzunluğu.
  • dataSource (STRING): Belgenin kaynağı (ör. docs.cloud.google.com). Korpusdaki veri kaynaklarının tam listesi için https://developers.google.com/knowledge/reference/corpus-reference adresini ziyaret edin.
  • updateTime (TIMESTAMP): Belgenin en son anlamlı şekilde güncellendiği zamanın zaman damgası. Anlamlı bir güncelleme, dokümanın Markdown içeriğini veya meta verilerini değiştiren bir güncellemedir.
  • uri (STRING): Belge URI'si (ör. https://docs.cloud.google.com/bigquery/docs/tables).

INTEGER alanları =, <, <=, > ve >= operatörlerini destekler.

DİZİ alanları, dizenin tamamında tam eşleşme için = (eşittir) ve != (eşit değildir) operatörlerini destekler. Kısmi eşleşme, ön ek eşleşmesi ve normal ifade eşleşmesi desteklenmez.

TIMESTAMP alanları =, <, <=, > ve >= operatörlerini destekler. Zaman damgaları RFC-3339 biçiminde olmalıdır (ör. "2025-01-01T00:00:00Z").

AND, OR ve NOT (veya -) mantıksal operatörlerini kullanarak ifadeleri birleştirebilirsiniz. OR, AND değerinden daha yüksek önceliğe sahiptir. Açık öncelik gruplandırması için parantez kullanın.

Örnekler:

  • Document.content_length_bytes: contentLengthBytes < 50000 etiketine göre filtrele
  • dataSource = "docs.cloud.google.com" OR dataSource = "firebase.google.com"
  • dataSource != "firebase.google.com"
  • updateTime < "2024-01-01T00:00:00Z"
  • updateTime >= "2025-01-22T00:00:00Z" AND (dataSource = "developer.chrome.com" OR dataSource = "web.dev")
  • uri = "https://docs.cloud.google.com/release-notes"

filter dizesi 500 karakteri aşmamalıdır. 500 karakterden uzun değerler INVALID_ARGUMENT hatasına neden olur.

Yanıt metni

DeveloperKnowledge.AnswerQuery için yanıt mesajı.

Başarılı olursa yanıt metni aşağıdaki yapıyla birlikte verileri içerir:

JSON gösterimi
{
  "answer": {
    object (Answer)
  }
}
Alanlar
answer

object (Answer)

Sorgunun yanıtı.

Yetkilendirme kapsamları

Aşağıdaki OAuth kapsamlarından birini gerektirir:

  • https://www.googleapis.com/auth/devprofiles.full_control
  • https://www.googleapis.com/auth/developerprofiles.readonly
  • https://www.googleapis.com/auth/cloud-platform

Daha fazla bilgi için OAuth 2.0 Overview sayfasına bakın.

Cevap

Bir sorguya verilen yanıt.

JSON gösterimi
{
  "answerText": string,
  "citations": [
    {
      object (AnswerCitation)
    }
  ],
  "references": [
    {
      object (AnswerReference)
    }
  ]
}
Alanlar
answerText

string

Yanıtın metnini içerir.

citations[]

object (AnswerCitation)

Yalnızca çıkış. Yanıtla ilgili alıntılar içerir.

references[]

object (AnswerReference)

Yalnızca çıkış. Cevapla ilgili referanslar içerir.

AnswerCitation

Bir segmentle ilgili alıntı bilgileri.

JSON gösterimi
{
  "startIndex": integer,
  "endIndex": integer,
  "sources": [
    {
      object (CitationSource)
    }
  ]
}
Alanlar
startIndex

integer

Yalnızca çıkış. Bayt (UTF-8 Unicode) cinsinden ölçülen ve dahil olan segmentin başlangıcını gösterir. ASCII olmayan karakterler gibi çok baytlı karakterler varsa dizin ölçümü, dize uzunluğundan daha uzundur.

endIndex

integer

Yalnızca çıkış. Segmentin sonunu gösterir. Bayt (UTF-8 unicode) cinsinden ölçülür ve hariçtir. ASCII olmayan karakterler gibi çok baytlı karakterler varsa dizin ölçümü, dize uzunluğundan daha uzundur.

sources[]

object (CitationSource)

Yalnızca çıkış. Atfedilen segment için alıntı kaynakları içerir.

CitationSource

Alıntı kaynağı.

JSON gösterimi
{
  "referenceIndex": integer
}
Alanlar
referenceIndex

integer

Yalnızca çıkış. references yinelenen alanındaki Answer.AnswerReference öğesinin dizinini içerir.

AnswerReference

Bir kaynağa yapılan başvuruyu gösterir.

JSON gösterimi
{

  // Union field content can be only one of the following:
  "documentReference": {
    object (DocumentReference)
  }
  // End of list of possible types for union field content.
}
Alanlar
content birleşik alanı. Referansın içeriğini barındırır. content aşağıdakilerden yalnızca biri olabilir:
documentReference

object (DocumentReference)

Yalnızca çıkış. Referans doküman.

DocumentReference

Bir belgeye yapılan referansı temsil eder.

JSON gösterimi
{
  "documentChunk": {
    object (DocumentChunk)
  }
}
Alanlar
documentChunk

object (DocumentChunk)

Yalnızca çıkış. Belge parçasını içerir. documentChunk.id alanı ayarlanmamış ve boş olacaktır.