API de búsqueda de Google App Engine

Al consultar un índice de búsqueda en la versión Python de laAPI de búsqueda de GAE, ¿cuál es la mejor práctica para buscar elementos donde los documentos con palabras coinciden con el título primero se devuelven, y luego los documentos donde las palabras coinciden con el cuerpo?

Por ejemplo dado:

body = """This is the body of the document, 
with a set of words"""

my_document = search.Document(
  fields=[
    search.TextField(name='title', value='A Set Of Words'),
    search.TextField(name='body', value=body),
   ])

Si es posible, ¿cómo podría uno realizar una búsqueda en un índice deDocuments de la forma anterior con los resultados devueltos en esta prioridad, donde la frase que se busca está en la variableqs:

Documentos cuyostitle coincide con elqs; entoncesDocumentos cuyo cuerpo coincide con elqs palabras.

Parece que la solución correcta es usar unMatchScorer, pero puedo estar fuera de lugar en esto ya que no he usado esta funcionalidad de búsqueda anteriormente. No queda claro en la documentación cómo usar elMatchScorer, pero presumo una subclase y sobrecarga alguna función, pero como esto no está documentado y no he profundizado en el código, no puedo asegurarlo.

¿Hay algo aquí que me esté perdiendo, o es esta la estrategia correcta? ¿Eché de menos dónde está documentado este tipo de cosas?

Solo por claridad, aquí hay un ejemplo más detallado del resultado deseado:

documents = [
  dict(title="Alpha", body="A"),          # "Alpha"
  dict(title="Beta", body="B Two"),       # "Beta"
  dict(title="Alpha Two", body="A"),      # "Alpha2"
]

for doc in documents: 
  search.Document(
    fields=[
       search.TextField(name="title", value=doc.title),
       search.TextField(name="body", value=doc.body),
    ]
  )
  index.put(doc)  # for some search.Index

# Then when we search, we search the Title and Body.
index.search("Alpha")
# returns [Alpha, Alpha2]

# Results where the search is found in the Title are given higher weight.
index.search("Two")
# returns [Alpha2, Beta]  -- note Alpha2 has 'Two' in the title.