Spaces:
Sleeping
Sleeping
File size: 3,907 Bytes
b8e705b 410893b 6822e1b 410893b 6822e1b 410893b 6822e1b 410893b 6822e1b 410893b 6822e1b 410893b 6822e1b 410893b 6822e1b 410893b 6822e1b 410893b 6822e1b 410893b 6822e1b 410893b 6822e1b 410893b |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
from typing import List, Optional
from pydantic import BaseModel, Field, conint, confloat
class PotentialValue(BaseModel):
"""A potential value within an exploration axis"""
value: str = Field(..., description="The specific value within the axis")
relevance_score: confloat(ge=0, le=100) = Field(..., description="Relevance score from 0-100")
contextual_rationale: str = Field(..., description="Explanation of the value's relevance")
class InnovativeValue(BaseModel):
"""An innovative value within an emergent axis"""
value: str = Field(..., description="The innovative value within the emergent axis")
innovation_score: confloat(ge=0, le=100) = Field(..., description="Innovation score from 0-100")
discovery_potential: str = Field(..., description="Description of potential discoveries")
class StandardAxis(BaseModel):
"""A standard exploration axis"""
name: str = Field(..., description="Name of the standard axis")
current_values: List[str] = Field(default_factory=list, description="Currently selected values")
potential_values: List[PotentialValue] = Field(..., description="Potential values for exploration")
axis_constraints: List[str] = Field(..., description="Constraints for this axis")
class EmergentAxis(BaseModel):
"""An emergent exploration axis"""
name: str = Field(..., description="Name of the emergent axis")
parent_axis: str = Field(..., description="Parent axis from which this emerged")
innovative_values: List[InnovativeValue] = Field(..., description="Innovative values for exploration")
class ZoomTrajectory(BaseModel):
"""A trajectory for zooming into specific aspects"""
target_axis: str = Field(..., description="Target axis for zooming")
zoom_value: str = Field(..., description="Specific value to zoom into")
unlocked_dimensions: List[str] = Field(..., description="New dimensions unlocked by zooming")
depth_increment: conint(ge=1, le=3) = Field(..., description="Depth increase (1-3)")
class DezoomPathway(BaseModel):
"""A pathway for zooming out to broader context"""
removal_tuple: dict = Field(..., description="Axis-value pair to remove")
contextual_expansion: str = Field(..., description="Description of broader context")
new_possibility_vectors: List[str] = Field(..., description="New possibilities unlocked")
class ExplorationSummary(BaseModel):
"""Summary of the current exploration state"""
current_context: str = Field(..., description="Current exploration context")
complexity_level: conint(ge=0, le=10) = Field(..., description="Complexity level (0-10)")
class KnowledgeAxes(BaseModel):
"""Collection of exploration axes"""
standard_axes: List[StandardAxis] = Field(..., description="Standard exploration axes")
emergent_axes: List[EmergentAxis] = Field(default_factory=list, description="Emergent exploration axes")
class NavigationStrategies(BaseModel):
"""Available navigation strategies"""
zoom_trajectories: List[ZoomTrajectory] = Field(..., description="Paths for deeper exploration")
dezoom_pathways: List[DezoomPathway] = Field(..., description="Paths for broader exploration")
class MetaInsights(BaseModel):
"""Meta-level insights about the exploration"""
exploration_efficiency: confloat(ge=0, le=100) = Field(..., description="Overall efficiency score")
knowledge_gap_indicators: List[str] = Field(..., description="Identified knowledge gaps")
recommended_next_steps: List[str] = Field(..., description="Recommended next steps")
class ExplorationResponse(BaseModel):
"""Complete exploration response structure"""
exploration_summary: ExplorationSummary = Field(..., description="Summary of exploration state")
knowledge_axes: KnowledgeAxes = Field(..., description="Exploration axes")
navigation_strategies: NavigationStrategies = Field(..., description="Navigation options")
meta_insights: MetaInsights = Field(..., description="Meta-level insights") |