mirror of
https://github.com/deepset-ai/haystack.git
synced 2025-12-27 15:08:43 +00:00
Make FAQ question field customizable (#146)
This commit is contained in:
parent
f3492a3f12
commit
4c2726f7ab
@ -20,6 +20,7 @@ DB_INDEX_FEEDBACK = os.getenv("DB_INDEX_FEEDBACK", "feedback")
|
||||
ES_CONN_SCHEME = os.getenv("ES_CONN_SCHEME", "http")
|
||||
TEXT_FIELD_NAME = os.getenv("TEXT_FIELD_NAME", "text")
|
||||
SEARCH_FIELD_NAME = os.getenv("SEARCH_FIELD_NAME", "text")
|
||||
FAQ_QUESTION_FIELD_NAME = os.getenv("FAQ_QUESTION_FIELD_NAME", "question")
|
||||
EMBEDDING_FIELD_NAME = os.getenv("EMBEDDING_FIELD_NAME", None)
|
||||
EMBEDDING_DIM = os.getenv("EMBEDDING_DIM", None)
|
||||
|
||||
|
||||
@ -11,7 +11,7 @@ from haystack import Finder
|
||||
from haystack.api.config import DB_HOST, DB_PORT, DB_USER, DB_PW, DB_INDEX, ES_CONN_SCHEME, TEXT_FIELD_NAME, SEARCH_FIELD_NAME, \
|
||||
EMBEDDING_DIM, EMBEDDING_FIELD_NAME, EXCLUDE_META_DATA_FIELDS, EMBEDDING_MODEL_PATH, USE_GPU, READER_MODEL_PATH, \
|
||||
BATCHSIZE, CONTEXT_WINDOW_SIZE, TOP_K_PER_CANDIDATE, NO_ANS_BOOST, MAX_PROCESSES, MAX_SEQ_LEN, DOC_STRIDE, \
|
||||
DEFAULT_TOP_K_READER, DEFAULT_TOP_K_RETRIEVER, CONCURRENT_REQUEST_PER_WORKER
|
||||
DEFAULT_TOP_K_READER, DEFAULT_TOP_K_RETRIEVER, CONCURRENT_REQUEST_PER_WORKER, FAQ_QUESTION_FIELD_NAME
|
||||
from haystack.api.controller.utils import RequestLimiter
|
||||
from haystack.database.elasticsearch import ElasticsearchDocumentStore
|
||||
from haystack.reader.farm import FARMReader
|
||||
@ -36,6 +36,7 @@ document_store = ElasticsearchDocumentStore(
|
||||
embedding_dim=EMBEDDING_DIM,
|
||||
embedding_field=EMBEDDING_FIELD_NAME,
|
||||
excluded_meta_data=EXCLUDE_META_DATA_FIELDS, # type: ignore
|
||||
faq_question_field=FAQ_QUESTION_FIELD_NAME,
|
||||
)
|
||||
|
||||
|
||||
|
||||
@ -26,6 +26,7 @@ class ElasticsearchDocumentStore(BaseDocumentStore):
|
||||
embedding_dim: Optional[str] = None,
|
||||
custom_mapping: Optional[dict] = None,
|
||||
excluded_meta_data: Optional[list] = None,
|
||||
faq_question_field: Optional[str] = None,
|
||||
scheme: str = "http",
|
||||
ca_certs: bool = False,
|
||||
verify_certs: bool = True,
|
||||
@ -92,6 +93,7 @@ class ElasticsearchDocumentStore(BaseDocumentStore):
|
||||
self.external_source_id_field = external_source_id_field
|
||||
self.embedding_field = embedding_field
|
||||
self.excluded_meta_data = excluded_meta_data
|
||||
self.faq_question_field = faq_question_field
|
||||
|
||||
def get_document_by_id(self, id: str) -> Optional[Document]:
|
||||
query = {"query": {"ids": {"values": [id]}}}
|
||||
@ -227,6 +229,7 @@ class ElasticsearchDocumentStore(BaseDocumentStore):
|
||||
external_source_id=hit["_source"].get(self.external_source_id_field),
|
||||
meta=meta_data,
|
||||
query_score=hit["_score"] + score_adjustment if hit["_score"] else None,
|
||||
question=hit["_source"].get(self.faq_question_field)
|
||||
)
|
||||
return document
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user