unique_web_search 2026.22.0.dev4__tar.gz → 2026.22.0.dev5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/PKG-INFO +2 -2
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/pyproject.toml +2 -2
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/config.py +6 -6
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/service.py +1 -1
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/tavily.py +0 -13
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/base_executor.py +0 -10
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/executor.py +1 -1
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v2/executor.py +1 -1
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v3/executor.py +1 -1
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/query_elicitation.py +1 -1
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/README.md +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/client_settings.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/metrics.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/prompts.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/schema.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/config.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/exceptions.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/prompts/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/prompts/guidelines.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/prompts/rejection_response.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/prompts/system_prompt.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/prompts/user_prompt.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/service.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/client/proxy_config.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/cleaning/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/cleaning/character_sanitize.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/cleaning/clean.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/cleaning/config.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/config.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/base.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/config.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/llm_guard_judge.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/llm_keyword_redact.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/llm_process.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/prompts/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/prompts/judge_and_sanitize_prompt.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/prompts/judge_prompt.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/prompts/keyword_extract_prompt.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/prompts/page_context.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/prompts/sanitize_rules.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/prompts/system_prompt.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/prompts/user_prompt.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/schema.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/settings.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/truncate.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/service.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/README.md +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/base.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/basic.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/crawl4ai.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/firecrawl.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/jina.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/utils.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/README.md +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/base_config.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/context.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/config.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/prompts/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/prompts/refine_query_system_prompt.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/prompts/restrict_date_description.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/prompts/tool_description.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/prompts/tool_description_for_system_prompt.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/schema.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v2/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v2/config.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v2/prompts/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v2/prompts/step_query_description.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v2/prompts/tool_description.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v2/prompts/tool_description_for_system_prompt.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v2/schema.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v3/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v3/config.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v3/prompts/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v3/prompts/tool_description.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v3/prompts/tool_description_for_system_prompt.j2 +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v3/schema.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/helpers.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/message_log.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/README.md +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/base.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/bing.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/brave.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/custom_api.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/firecrawl.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/google.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/jina.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/schema.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/tavily.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/google/schema.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/bing/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/bing/client.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/bing/models.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/bing/runner.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/models.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/response_parsing.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/vertexai/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/vertexai/client.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/vertexai/exceptions.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/vertexai/gemini.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/vertexai/response_handler.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/vertexai.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/snippet_judge/__init__.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/snippet_judge/prompts.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/snippet_judge/schema.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/snippet_judge/service.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/structured_llm.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/url_safety.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/settings.py +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/skills/web-search-v3.md +0 -0
- {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: unique-web-search
|
|
3
|
-
Version: 2026.22.0.
|
|
3
|
+
Version: 2026.22.0.dev5
|
|
4
4
|
Summary:
|
|
5
5
|
Author: Andreas Hauri, Gustav Hartz, Rami Azouz
|
|
6
6
|
Author-email: Andreas Hauri <andreas@unique.ch>, Gustav Hartz <gustav.hartz.ext@unique.ch>, Rami Azouz <rami.ext@unique.ch>
|
|
@@ -17,7 +17,7 @@ Requires-Dist: tavily-python>=0.7.11,<1
|
|
|
17
17
|
Requires-Dist: unidecode>=1.4.0,<2
|
|
18
18
|
Requires-Dist: azure-ai-projects>=1.0.0,<2
|
|
19
19
|
Requires-Dist: azure-identity>=1.25.0,<2
|
|
20
|
-
Requires-Dist: unique-toolkit[monitoring]>=2026.22.0.
|
|
20
|
+
Requires-Dist: unique-toolkit[monitoring]>=2026.22.0.dev12,<2026.22.0rc0
|
|
21
21
|
Requires-Dist: azure-core>=1.36.0,<2
|
|
22
22
|
Requires-Dist: google-cloud-aiplatform>=1.128.0,<2
|
|
23
23
|
Requires-Dist: google-auth>=2.43.0,<3
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "unique_web_search"
|
|
3
|
-
version = "2026.22.0.
|
|
3
|
+
version = "2026.22.0.dev5"
|
|
4
4
|
description = ""
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.12,<4.0"
|
|
@@ -23,7 +23,7 @@ dependencies = [
|
|
|
23
23
|
"unidecode>=1.4.0,<2",
|
|
24
24
|
"azure-ai-projects>=1.0.0,<2",
|
|
25
25
|
"azure-identity>=1.25.0,<2",
|
|
26
|
-
"unique-toolkit[monitoring]>=2026.22.0.
|
|
26
|
+
"unique-toolkit[monitoring]>=2026.22.0.dev12,<2026.22.0rc0",
|
|
27
27
|
"azure-core>=1.36.0,<2",
|
|
28
28
|
"google-cloud-aiplatform>=1.128.0,<2",
|
|
29
29
|
"google-auth>=2.43.0,<3",
|
|
@@ -105,11 +105,6 @@ class AnswerGenerationConfig(BaseModel):
|
|
|
105
105
|
|
|
106
106
|
|
|
107
107
|
class ExperimentalFeatures(FeatureExtendedSourceSerialization):
|
|
108
|
-
query_elicitation_config: QueryElicitationConfig = Field(
|
|
109
|
-
default_factory=QueryElicitationConfig,
|
|
110
|
-
title="Query Review",
|
|
111
|
-
description="Allow users to review and modify search queries before execution.",
|
|
112
|
-
)
|
|
113
108
|
tool_response_system_reminder: ToolResponseSystemReminderConfig = Field(
|
|
114
109
|
default_factory=ToolResponseSystemReminderConfig,
|
|
115
110
|
title="Tool Response System Reminder",
|
|
@@ -168,7 +163,12 @@ class WebSearchConfig(BaseToolConfig):
|
|
|
168
163
|
description="Settings for the agent-driven search mode (V3): the model itself chains snippet-only `search` calls with on-demand full-page `read_urls` calls per task.",
|
|
169
164
|
)
|
|
170
165
|
|
|
171
|
-
|
|
166
|
+
query_elicitation_config: QueryElicitationConfig = Field(
|
|
167
|
+
default_factory=QueryElicitationConfig,
|
|
168
|
+
title="Query Elicitation",
|
|
169
|
+
description="Allow users to review and modify search queries before execution.",
|
|
170
|
+
)
|
|
171
|
+
|
|
172
172
|
search_engine_config: ActivatedSearchEngine = Field( # type: ignore (This type is computed at runtime so pyright is not able to infer it)
|
|
173
173
|
default_factory=DefaultSearchEngine, # type: ignore (This type is computed at runtime so pyright is not able to infer it)
|
|
174
174
|
title="Search Engine",
|
|
@@ -297,7 +297,7 @@ class WebSearchTool(Tool[WebSearchConfig]):
|
|
|
297
297
|
elicitation_service = QueryElicitationService(
|
|
298
298
|
chat_service=self._chat_service,
|
|
299
299
|
display_name=self.display_name(),
|
|
300
|
-
config=self.config.
|
|
300
|
+
config=self.config.query_elicitation_config,
|
|
301
301
|
)
|
|
302
302
|
|
|
303
303
|
# Build context objects
|
|
@@ -55,19 +55,6 @@ class TavilyCrawler(BaseCrawler[TavilyCrawlerConfig]):
|
|
|
55
55
|
response["results"].extend(result.get("results", []))
|
|
56
56
|
response["failed_results"].extend(result.get("failed_results", []))
|
|
57
57
|
|
|
58
|
-
for i in range(0, len(urls), batch_size):
|
|
59
|
-
batch_urls = urls[i : i + batch_size]
|
|
60
|
-
batch_response = await client.extract(
|
|
61
|
-
urls=batch_urls,
|
|
62
|
-
format="markdown",
|
|
63
|
-
include_images=False,
|
|
64
|
-
extract_depth=self.config.depth,
|
|
65
|
-
timeout=self.config.timeout,
|
|
66
|
-
include_favicon=False,
|
|
67
|
-
)
|
|
68
|
-
response["results"].extend(batch_response.get("results", []))
|
|
69
|
-
response["failed_results"].extend(batch_response.get("failed_results", []))
|
|
70
|
-
|
|
71
58
|
# Create a mapping from URL to content
|
|
72
59
|
url_to_content = {}
|
|
73
60
|
|
|
@@ -4,7 +4,6 @@ from time import time
|
|
|
4
4
|
from typing import Generic, TypeVar
|
|
5
5
|
|
|
6
6
|
from pydantic import BaseModel
|
|
7
|
-
from unique_toolkit.agentic.feature_flags import feature_flags
|
|
8
7
|
from unique_toolkit.agentic.tools.tool_progress_reporter import (
|
|
9
8
|
ProgressState,
|
|
10
9
|
)
|
|
@@ -151,12 +150,3 @@ class BaseWebSearchExecutor(ABC, Generic[T]):
|
|
|
151
150
|
return sorted_chunks.content_chunks
|
|
152
151
|
else:
|
|
153
152
|
return content
|
|
154
|
-
|
|
155
|
-
async def _ff_elicitate_queries(self, queries: list[str]) -> list[str]:
|
|
156
|
-
if not feature_flags.enable_elicitation_un_15809.is_enabled(self.company_id):
|
|
157
|
-
return queries
|
|
158
|
-
|
|
159
|
-
# Create a query elicitation
|
|
160
|
-
elicitation = await self.query_elicitation(queries)
|
|
161
|
-
|
|
162
|
-
return elicitation
|
|
@@ -175,7 +175,7 @@ class WebSearchV1Executor(BaseWebSearchExecutor[WebSearchToolParameters]):
|
|
|
175
175
|
)
|
|
176
176
|
refined_queries, objective = await self._refine_query(query)
|
|
177
177
|
|
|
178
|
-
elicitated_queries = await self.
|
|
178
|
+
elicitated_queries = await self.query_elicitation(refined_queries)
|
|
179
179
|
|
|
180
180
|
web_search_results = []
|
|
181
181
|
|
|
@@ -274,7 +274,7 @@ class WebSearchV2Executor(BaseWebSearchExecutor[WebSearchPlan]):
|
|
|
274
274
|
return read_url_steps
|
|
275
275
|
|
|
276
276
|
search_queries = [step.query_or_url for step in search_steps]
|
|
277
|
-
elicited_queries = await self.
|
|
277
|
+
elicited_queries = await self.query_elicitation(search_queries)
|
|
278
278
|
|
|
279
279
|
elicited_search_steps = [
|
|
280
280
|
Step(step_type=StepType.SEARCH, query_or_url=query, objective="")
|
|
@@ -79,7 +79,7 @@ class WebSearchV3Executor(BaseWebSearchExecutor[WebSearchV3ToolParameters]):
|
|
|
79
79
|
self.notify_message = objective
|
|
80
80
|
await self.notify_callback()
|
|
81
81
|
|
|
82
|
-
elicited = await self.
|
|
82
|
+
elicited = await self.query_elicitation([query])
|
|
83
83
|
query = elicited[0]
|
|
84
84
|
|
|
85
85
|
self.debug_info.steps.append(
|
|
@@ -29,7 +29,7 @@ class QueryElicitationConfig(BaseModel):
|
|
|
29
29
|
enable_elicitation: bool = Field(
|
|
30
30
|
default=False,
|
|
31
31
|
title="Enable Query Review",
|
|
32
|
-
description="When enabled, users can review and modify proposed search queries before they are executed.
|
|
32
|
+
description="When enabled, users can review and modify proposed search queries before they are executed.",
|
|
33
33
|
)
|
|
34
34
|
timeout_seconds: int = Field(
|
|
35
35
|
default=60,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/utils.py
RENAMED
|
File without changes
|