Skip to main content

Overview

The Think Thoroughly Agent performs comprehensive market analysis by breaking down questions into hypothetical and conditional scenarios, researching each scenario independently, and synthesizing findings into a final prediction. It uses CrewAI for orchestrating multiple research and prediction tasks.

Base Class: ThinkThoroughlyBase

Abstract base class for Think Thoroughly agent variants.

Configuration Properties

AgentIdentifier
Unique identifier for the agent variant
KnownModelName
Model used for scenario generation and final decision
KnownModelName
Model used for individual scenario predictions
bool
Enable Langfuse observability
bool
default:"True"
Enable long-term memory storage

Core Components

OmenSubgraphHandler
Handles Omen market data queries
PineconeHandler
Vector database for finding correlated markets
LongTermMemoryTableHandler | None
Stores predictions and scenarios for future reference

Methods

answer_binary_market

Main prediction method that orchestrates the full multi-scenario analysis.
str
The market question to predict on
int
default:"1"
Number of iterative refinement passes. Higher values allow predictions to be adjusted based on previous scenario results.
DatetimeUTC | None
When the market was created (used for time-based analysis)
ProbabilisticAnswer | None
Final probabilistic prediction synthesized from all scenarios

get_hypohetical_scenarios

Generates hypothetical alternative phrasings and interpretations of the question.
Scenarios
List of 5 hypothetical scenarios, plus the original question

get_required_conditions

Identifies necessary conditions that must be true for the question to resolve positively.
Scenarios
List of 3 conditional scenarios

generate_prediction_for_one_outcome

Researches and predicts a single scenario. Must be implemented by subclasses.

generate_final_decision

Synthesizes all scenario predictions into a final answer.

get_correlated_markets

Finds similar markets using vector similarity search.

Implementation Variants

ThinkThoroughlyWithItsOwnResearch

Uses CrewAI to perform independent web research for each scenario.

Research Process

For each scenario:
  1. Research Task: Uses Tavily search to gather web evidence
  2. Prediction Task: Analyzes research to generate probability
  3. Sequential Processing: Research output feeds into prediction

ThinkThoroughlyWithPredictionProphetResearch

Uses PredictionProphet library for research instead of CrewAI.

Key Differences

  • Uses prophet_research() for web research
  • Uses prophet_make_prediction() for predictions
  • No iterative refinement: Does not support previous_scenarios_and_answers
  • Sets initial_subqueries_limit=0 (agent generates its own subqueries)

Deployable Agents

DeployableThinkThoroughlyAgent

Production agent using internal research.

Betting Strategy

Usage

DeployableThinkThoroughlyProphetResearchAgent

Production agent using PredictionProphet research.
Note: Betting strategy is currently disabled (commented out) pending profitability analysis.

Prediction Workflow

The Think Thoroughly agent follows a systematic 5-step process:

Step 1: Generate Scenarios

  • Hypothetical scenarios: 5 alternative phrasings/interpretations
  • Conditional scenarios: 3 necessary conditions
  • Total: ~8 scenarios to analyze

Step 2: Parallel Research

Researches all scenarios in parallel using multiprocessing.

Step 3: Collect Predictions

Gathers predictions that succeeded (some may fail due to research errors).

Step 4: Find Correlated Markets

Uses Pinecone vector search to find similar markets for additional context.

Step 5: Synthesize Final Decision

Weighs all scenario predictions and correlated market data to produce final probability.

CrewAI Integration

Agent Roles

Research Analyst

Professional Gambler

Task Orchestration

Data Models

Scenarios

AnswerWithScenario

CorrelatedMarketInput

Advanced Usage

Custom Number of Iterations

Direct Scenario Analysis

Local Testing

Performance Considerations

Parallel Processing

Uses par_generator with multiprocessing for parallel scenario research:
  • Faster than sequential processing
  • Each scenario researched independently
  • Handles failures gracefully (continues with successful predictions)

Memory Management

Saves all intermediate predictions to long-term memory:
This allows:
  • Learning from past predictions
  • Debugging scenario-level reasoning
  • Building up historical knowledge

Time Analysis

Considers temporal aspects:

Required API Keys

str
required
For GPT-4 models used in research and prediction
str
required
For web search functionality
str
required
For vector similarity search of correlated markets

Source Location