mirror of
https://github.com/danswer-ai/danswer.git
synced 2025-04-01 00:18:18 +02:00
Copy SearchQuery model with updated attribute due to Config.frozen=True (#806)
Fixes the following TypeError: api_server_1 | File "/usr/local/lib/python3.11/site-packages/anyio/to_thread.py", line 33, in run_sync api_server_1 | return await get_asynclib().run_sync_in_worker_thread( api_server_1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ api_server_1 | File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 877, in run_sync_in_worker_thread api_server_1 | return await future api_server_1 | ^^^^^^^^^^^^ api_server_1 | File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 807, in run api_server_1 | result = context.run(func, *args) api_server_1 | ^^^^^^^^^^^^^^^^^^^^^^^^ api_server_1 | File "/usr/local/lib/python3.11/site-packages/starlette/concurrency.py", line 53, in _next api_server_1 | return next(iterator) api_server_1 | ^^^^^^^^^^^^^^ api_server_1 | File "/app/danswer/utils/timing.py", line 47, in wrapped_func api_server_1 | value = next(gen) api_server_1 | ^^^^^^^^^ api_server_1 | File "/app/danswer/direct_qa/answer_question.py", line 243, in answer_qa_query_stream api_server_1 | top_chunks = cast(list[InferenceChunk], next(search_generator)) api_server_1 | ^^^^^^^^^^^^^^^^^^^^^^ api_server_1 | File "/app/danswer/search/search_runner.py", line 469, in full_chunk_search_generator api_server_1 | retrieved_chunks = retrieve_chunks( api_server_1 | ^^^^^^^^^^^^^^^^ api_server_1 | File "/app/danswer/search/search_runner.py", line 353, in retrieve_chunks api_server_1 | q_copy.query = rephrase api_server_1 | ^^^^^^^^^^^^ api_server_1 | File "pydantic/main.py", line 359, in pydantic.main.BaseModel.__setattr__ api_server_1 | TypeError: "SearchQuery" is immutable and does not support item assignment
This commit is contained in:
parent
bc403d97f2
commit
5629ca7d96
@ -1,7 +1,6 @@
|
||||
import string
|
||||
from collections.abc import Callable
|
||||
from collections.abc import Iterator
|
||||
from copy import deepcopy
|
||||
from typing import cast
|
||||
|
||||
import numpy
|
||||
@ -354,8 +353,7 @@ def retrieve_chunks(
|
||||
# Just to be extra sure, add the original query.
|
||||
query_rephrases.append(query.query)
|
||||
for rephrase in set(query_rephrases):
|
||||
q_copy = deepcopy(query)
|
||||
q_copy.query = rephrase
|
||||
q_copy = query.copy(update={'query': rephrase}, deep=True)
|
||||
run_queries.append(
|
||||
(doc_index_retrieval, (q_copy, document_index, hybrid_alpha))
|
||||
)
|
||||
|
Loading…
x
Reference in New Issue
Block a user