Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Dúvida sobre idioma e uso de apóstrofos em queries no LlamaIndex

Acabei de resolver o exercício e implementei assim (código abaixo):

all_exercise_responses = []

print("Resposta para a 1ª query('Em quais cidades temos filiais?'):")
exercise_q1 = query_engine.query('In which cities do we have branches??')
print(exercise_q1.response)
all_exercise_responses.append(exercise_q1)
print("-" * 20)

print("Resposta para a 2ª query('Qual é o preço unitário médio de cada tipo de produto?'):")
exercise_q2 = query_engine.query('What is the average unit price of each type of product?')
print(exercise_q2.response)
all_exercise_responses.append(exercise_q2)
print("-" * 20)

print("Resposta para a 3ª query('Qual é a média de valor de compra por tipo de cliente?'):")
exercise_q3 = query_engine.query('What is the average purchase value by customer type?')
print(exercise_q3.response)
all_exercise_responses.append(exercise_q3)
print("-" * 20)

print("Resposta para a 4ª query('Qual é a filial com maior faturamento?'):")
exercise_q4 = query_engine.query('What is the branch with the highest turnover?')
print(exercise_q4.response)
all_exercise_responses.append(exercise_q4)
print("-" * 20)

print("\nTodas as respostas dos exercícios foram salvas em:  'all_exercise_responses' list.")

É a primeira vez que uso o Llama, assim como um modelo baseado em Q&A. Intuitivamente, escrevi as queries em inglês, pois estou acostumado com modelos semânticos sem suporte multilíngue.

Minha dúvida é:
no caso do modelo que estou usando (meta-llama/llama-4-scout-17b-16e-instruct, via GroqCloud), é realmente necessário escrever as consultas em inglês, ou ele lida bem com português também?

Obs: percebi também que consultas contendo apóstrofos (ex: What's) não funcionaram, mesmo escapando ou usando aspas duplas.

2 respostas
solução!

Oi, Yuri! Como vai?

1. Pode usar português nas queries?

Sim! O modelo Llama 4 Scout tem suporte multilíngue e entende muito bem o português, inclusive com consultas naturais.

Veja este exemplo:


resposta = query_engine.query("Qual e a filial com maior faturamento?")
print(resposta.response)

Ou em inglês, se preferir manter:


resposta = query_engine.query("Which branch has the highest revenue?")
print(resposta.response)

Dica: Se os nomes das colunas estiverem em inglês, às vezes é mais preciso perguntar em inglês. Mas o modelo geralmente entende bem as intenções mesmo em português.

2. Apostrofos (como em What's) dão erro?

Isso pode estar ligado ao tipo de aspas e codificação. Veja como resolver:

a) Use aspas duplas ao redor da string


query_engine.query("What's the average value?")

b) Escape o apóstrofo com barra invertida


query_engine.query('What\'s the average value?')

c) Use aspas triplas


query_engine.query("""What's the average value?""")

d) Evite contrações (recomendado)


query_engine.query("What is the average value?")

e) Cuidado com o apóstrofo “curvo” (’), que causa erro!

Use o módulo unicodedata para normalizar:


import unicodedata

texto = "What’s the branch with the highest turnover?"  # com apóstrofo curvo
texto_ascii = unicodedata.normalize("NFKC", texto).replace("’", "'")

query_engine.query(texto_ascii)

Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado

Oi, Rafaela! Tudo bem por aqui e muito obrigado pela explicação detalhada!

Ficou claro que posso usar português nas queries sem problemas, e também entendi as nuances com nomes de colunas em inglês.
As alternativas para o uso de apóstrofos ajudaram bastante, especialmente a dica de evitar contrações, na qual optei por seguir — simples e eficaz.

Valeu pelo apoio, me ajudou muito!