From QueryEngineSettings.yaml (jarvisv2/QueryEngineSettings.schema
)
---
name: test-query-engine
tenants: [__all__]
modules:
- type: standard-ir
name: directory-ir
intents:
- call
- who is
- whois
module_synonyms:
- answer_type: directory
answer_field: department
synonyms:
- [Cardiology, cardio, heart]
#end module_synonyms
module_stopwords:
- answer_type: directory
answer_field: department
stopwords: en-standard
#end module_stopwords
# 1. Phrase Finders
# -----------------
intent_phrase_finder:
type: intent
retriever:
retriever_functions: [{type: intent-phrase-retriever}]
scorer:
scorer_functions: [{type: phrase-scorer}]
reranker:
reranker_functions:
- type: max-cutoff-reranker
score_key: missed_query_tokens_score
cutoff: 0.5
- type: order-by-reranker
order_by: ["+missed_query_tokens_score"]
#end intent_phrase_finder
answer_phrase_finders:
- type: answer
answer_type: directory
answer_field: name
retriever:
retriever_functions: [{type: answer-phrase-retriever}]
scorer:
scorer_functions: [{type: phrase-scorer}]
reranker:
reranker_functions:
- type: max-cutoff-reranker
score_key: missed_query_tokens_score
cutoff: 0.5
- type: order-by-reranker
order_by: ["+missed_query_tokens_score", "-matched_tokens_score"]
#end directory/name
- type: answer
answer_type: directory
answer_field: department
retriever:
retriever_functions: [{type: answer-phrase-retriever}]
scorer:
scorer_functions: [{type: phrase-scorer}]
reranker:
reranker_functions:
- type: max-cutoff-reranker
score_key: missed_query_tokens_score
cutoff: 0.5
keep_original_if_all_discarded: true
- type: order-by-reranker
order_by: ["+missed_query_tokens_score", "-matched_tokens_score"]
#end directory/name
#end answer_phrase_finders
# 2. Answer Finder
# ----------------
answer_finder:
retriever:
retriever_functions:
- type: answer-retriever
size: 128
max_clause_count: 512
weights:
- answer_type: directory
answer_field: name
weight: matched_tokens_score
multiplier: 3
- answer_type: directory
answer_field: department
weight: matched_tokens_score
multiplier: 1.5
#end weights
#end answer-retriever
#end retriever_functions
#end retriever
reranker:
reranker_functions:
- type: max-cutoff-reranker
score_key: missed_query_tokens_score
cutoff: 0.5
keep_original_if_all_discarded: true
- type: order-by-reranker
order_by: ["+missed_query_tokens_score", "-matched_tokens_score"]
- type: answer-field-reranker
name: matches-name-field
answer_fields: ["directory.name", "directory.email_username"]
match_type: any
keep_original_if_all_discarded: true
- type: first-n-reranker
name: first-n-reranker
n: 5
- type: last-n-reranker
name: last-n-reranker
n: 5
- type: top-k-reranker
name: top-k-reranker
k: 5
score_key: matched_tokens_score
keep_ties: true
- type: reverse-reranker
#end reranker
#end answer_finder
# 3. Module Response
# ------------------
module_responder:
type: directory-ir
#end module_responder
#end directory-ir
#end modules
---
name: llm-query-engine
tenants: [__all__]
modules:
- type: document-llm
name: document-llm-search-v0
vector_store:
table_name_prefix: jarvisv2-
#end vector_store
embedding_model:
- model: Snowflake/snowflake-arctic-embed-m
#end embedding_model
llm_model:
model: mistral.mistral-7b-instruct-v0:2
temperature: 0.2
similarity_cutoff: 0.3
similarity_top_k: 5
#end llm
#end document-llm-search-v0
#end modules
---
name: noop-query-engine
tenants: __all__
modules: [{type: noop}]
---
name: noop-query-engine
tenants: [__all__]
modules: [{type: noop}]