bioguider 0.2.32__tar.gz → 0.2.33__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.
Potentially problematic release.
This version of bioguider might be problematic. Click here for more details.
- {bioguider-0.2.32 → bioguider-0.2.33}/PKG-INFO +1 -1
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/agent_utils.py +37 -13
- bioguider-0.2.33/bioguider/generation/llm_content_generator.py +771 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/managers/generation_manager.py +161 -39
- {bioguider-0.2.32 → bioguider-0.2.33}/pyproject.toml +1 -1
- bioguider-0.2.32/bioguider/generation/llm_content_generator.py +0 -180
- {bioguider-0.2.32 → bioguider-0.2.33}/LICENSE +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/README.md +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/__init__.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/__init__.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/agent_task.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/agent_tools.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/collection_execute_step.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/collection_observe_step.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/collection_plan_step.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/collection_task.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/collection_task_utils.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/common_agent.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/common_agent_2step.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/common_conversation.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/common_step.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/consistency_collection_step.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/consistency_evaluation_task.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/consistency_evaluation_task_utils.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/consistency_observe_step.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/consistency_query_step.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/dockergeneration_execute_step.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/dockergeneration_observe_step.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/dockergeneration_plan_step.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/dockergeneration_task.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/dockergeneration_task_utils.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/evaluation_installation_task.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/evaluation_readme_task.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/evaluation_submission_requirements_task.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/evaluation_task.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/evaluation_tutorial_task.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/evaluation_tutorial_task_prompts.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/evaluation_userguide_prompts.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/evaluation_userguide_task.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/identification_execute_step.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/identification_observe_step.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/identification_plan_step.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/identification_task.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/identification_task_utils.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/peo_common_step.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/prompt_utils.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/python_ast_repl_tool.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/agents/rag_collection_task.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/conversation.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/database/code_structure_db.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/database/summarized_file_db.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/generation/__init__.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/generation/change_planner.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/generation/document_renderer.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/generation/llm_cleaner.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/generation/llm_injector.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/generation/models.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/generation/output_manager.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/generation/repo_reader.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/generation/report_loader.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/generation/style_analyzer.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/generation/suggestion_extractor.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/generation/test_metrics.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/managers/evaluation_manager.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/managers/generation_test_manager.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/rag/__init__.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/rag/config.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/rag/data_pipeline.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/rag/embedder.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/rag/rag.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/settings.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/utils/code_structure_builder.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/utils/constants.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/utils/default.gitignore +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/utils/file_utils.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/utils/gitignore_checker.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/utils/notebook_utils.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/utils/pyphen_utils.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/utils/python_file_handler.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/utils/r_file_handler.py +0 -0
- {bioguider-0.2.32 → bioguider-0.2.33}/bioguider/utils/utils.py +0 -0
|
@@ -67,8 +67,17 @@ def get_llm(
|
|
|
67
67
|
api_version: str=None,
|
|
68
68
|
azure_deployment: str=None,
|
|
69
69
|
temperature: float = 0.0,
|
|
70
|
-
max_tokens: int =
|
|
70
|
+
max_tokens: int = 16384, # Set high by default - enough for any document type
|
|
71
71
|
):
|
|
72
|
+
"""
|
|
73
|
+
Create an LLM instance with appropriate parameters based on model type and API version.
|
|
74
|
+
|
|
75
|
+
Handles parameter compatibility across different models and API versions:
|
|
76
|
+
- DeepSeek models: Use max_tokens parameter
|
|
77
|
+
- GPT models (newer): Use max_completion_tokens parameter
|
|
78
|
+
- GPT-5+: Don't support custom temperature (uses default)
|
|
79
|
+
"""
|
|
80
|
+
|
|
72
81
|
if model_name.startswith("deepseek"):
|
|
73
82
|
chat = ChatDeepSeek(
|
|
74
83
|
api_key=api_key,
|
|
@@ -77,23 +86,38 @@ def get_llm(
|
|
|
77
86
|
max_tokens=max_tokens,
|
|
78
87
|
)
|
|
79
88
|
elif model_name.startswith("gpt"):
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
+
# Base parameters common to all GPT models
|
|
90
|
+
llm_params = {
|
|
91
|
+
"api_key": api_key,
|
|
92
|
+
"azure_endpoint": azure_endpoint,
|
|
93
|
+
"api_version": api_version,
|
|
94
|
+
"azure_deployment": azure_deployment,
|
|
95
|
+
"model": model_name,
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
# Determine token limit parameter name based on API version
|
|
99
|
+
# Newer APIs (2024-08+) use max_completion_tokens instead of max_tokens
|
|
100
|
+
use_completion_tokens = api_version and api_version >= "2024-08-01-preview"
|
|
101
|
+
token_param = "max_completion_tokens" if use_completion_tokens else "max_tokens"
|
|
102
|
+
llm_params[token_param] = max_tokens
|
|
103
|
+
|
|
104
|
+
# Handle temperature parameter based on model capabilities
|
|
105
|
+
# GPT-5+ models don't support custom temperature values
|
|
106
|
+
supports_temperature = not any(restricted in model_name for restricted in ["gpt-5", "o1", "o3"])
|
|
107
|
+
if supports_temperature:
|
|
108
|
+
llm_params["temperature"] = temperature
|
|
109
|
+
|
|
110
|
+
chat = AzureChatOpenAI(**llm_params)
|
|
89
111
|
else:
|
|
90
|
-
raise ValueError("
|
|
91
|
-
|
|
112
|
+
raise ValueError(f"Unsupported model type: {model_name}")
|
|
113
|
+
|
|
114
|
+
# Validate the LLM instance with a simple test
|
|
92
115
|
try:
|
|
93
116
|
chat.invoke("Hi")
|
|
94
117
|
except Exception as e:
|
|
95
|
-
|
|
118
|
+
logger.error(f"Failed to initialize LLM {model_name}: {e}")
|
|
96
119
|
return None
|
|
120
|
+
|
|
97
121
|
return chat
|
|
98
122
|
|
|
99
123
|
def pretty_print(message, printout = True):
|