haive.core.contracts.enhanced_prompt_config¶
Enhanced prompt configuration with full feature parity to AugLLMConfig.
This module provides complete prompt management including few-shot learning, messages placeholders, format instructions, and dynamic template creation.
Classes¶
Complete prompt configuration with full AugLLMConfig feature parity. |
|
Configuration for few-shot prompting. |
|
Configuration for format instructions. |
|
Configuration for messages placeholder handling. |
|
Manages multiple prompt templates. |
Module Contents¶
- class haive.core.contracts.enhanced_prompt_config.EnhancedPromptConfig(/, **data)[source]¶
Bases:
pydantic.BaseModelComplete prompt configuration with full AugLLMConfig feature parity.
This provides all prompt management features from AugLLMConfig: - Few-shot prompting with examples - Messages placeholder management - Dynamic template creation - Format instructions integration - Template storage and switching - Input variable management
- Parameters:
data (Any)
- prompt_template¶
Main prompt template.
- system_message¶
System message for chat models.
- few_shot¶
Few-shot configuration.
- messages¶
Messages configuration.
- format_instructions¶
Format instructions config.
- template_manager¶
Template management.
- input_variables¶
Required input variables.
- optional_variables¶
Optional input variables.
- partial_variables¶
Partial variables.
- contracts¶
Prompt contracts.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- add_format_instructions(model, as_tool=False)[source]¶
Add format instructions for structured output.
- compute_input_variables()[source]¶
Compute required input variables.
- Returns:
List of required variables.
- Return type:
List[str]
- create_template()[source]¶
Create appropriate template based on configuration.
- Returns:
Created template or None.
- Return type:
Optional[langchain_core.prompts.BasePromptTemplate]
- ensure_messages_placeholder()[source]¶
Ensure messages placeholder exists in template.
- Return type:
None
- list_templates()[source]¶
List all stored template names.
- Returns:
List of template names.
- Return type:
List[str]
- store_template(name, template)[source]¶
Store a template for later use.
- Parameters:
name (str) – Template name.
template (langchain_core.prompts.BasePromptTemplate) – Template to store.
- Return type:
None
- to_dict()[source]¶
Convert to dictionary.
- Returns:
Configuration as dictionary.
- Return type:
Dict[str, Any]
- class haive.core.contracts.enhanced_prompt_config.FewShotConfig(/, **data)[source]¶
Bases:
pydantic.BaseModelConfiguration for few-shot prompting.
- Parameters:
data (Any)
- examples¶
List of example input-output pairs.
- example_prompt¶
Template for formatting examples.
- prefix¶
Text before examples.
- suffix¶
Text after examples.
- example_separator¶
Separator between examples.
- example_selector¶
Optional selector for dynamic examples.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- class haive.core.contracts.enhanced_prompt_config.FormatInstructionsConfig(/, **data)[source]¶
Bases:
pydantic.BaseModelConfiguration for format instructions.
- Parameters:
data (Any)
- include_format_instructions¶
Whether to include instructions.
- format_instructions_key¶
Variable name for instructions.
- use_tool_for_format_instructions¶
Use tool-based approach.
- format_instructions_text¶
Cached instruction text.
- auto_generate¶
Auto-generate from structured model.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- class haive.core.contracts.enhanced_prompt_config.MessagesConfig(/, **data)[source]¶
Bases:
pydantic.BaseModelConfiguration for messages placeholder handling.
- Parameters:
data (Any)
- add_messages_placeholder¶
Whether to add placeholder.
- messages_placeholder_name¶
Variable name for messages.
- force_messages_optional¶
Force optional messages.
- uses_messages_field¶
Whether template uses messages.
- messages_position¶
Where to insert placeholder.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- class haive.core.contracts.enhanced_prompt_config.TemplateManager(/, **data)[source]¶
Bases:
pydantic.BaseModelManages multiple prompt templates.
- Parameters:
data (Any)
- stored_templates¶
Named templates.
- active_template¶
Currently active template.
- template_history¶
History of used templates.
- fallback_template¶
Fallback if main fails.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.