Yachtsy Models

Survey Agent

Professional boat surveys with AI-powered vision analysis, condition assessment, and detailed inspection reports.

Overview

The Survey Agent is a tool-based model with vision capabilities that provides comprehensive boat condition analysis, integrating image processing, database lookups, and expert assessment for detailed survey reports.

Vision Analysis: GPT-4o vision processing for boat photos, condition assessment, and visual inspection capabilities

Key Features

  • Vision Processing: Analyzes boat photos with GPT-4o vision
  • Condition Assessment: Detailed hull, rigging, engine, and systems evaluation
  • Real-time Streaming: See analysis appear as inspection progresses
  • Web Search Integration: Cross-references data with online sources
  • Professional Reports: Structured survey format with findings and recommendations

When to Use

Choose yachtsy-survey-agent when you need:

  • Pre-purchase boat inspections
  • Condition assessments for insurance
  • Maintenance planning and prioritization
  • Professional survey reports
  • Visual analysis of boat photos

Survey Capabilities

Inspection Areas

  1. Hull & Structure
    • Gelcoat condition and crazing
    • Through-hull fittings
    • Keel and rudder attachment
    • Deck and cabin structure
  2. Rigging & Sails
    • Standing rigging condition
    • Running rigging wear
    • Sail condition and age
    • Winch and hardware inspection
  3. Engine & Mechanical
    • Engine condition and maintenance
    • Fuel and water systems
    • Propeller and shaft
    • Steering system
  4. Electrical & Electronics
    • Wiring condition and safety
    • Battery and charging systems
    • Navigation electronics
    • Lighting and instruments
  5. Interior & Comfort
    • Cabin condition and wear
    • Plumbing and head systems
    • Ventilation and insulation
    • Storage and layout

Usage Examples

Basic Survey Request

from openai import OpenAI

client = OpenAI(
    base_url="https://api.yachtsy.ai/v1", 
    api_key="your-api-key"
)

# Comprehensive boat survey with streaming
response = client.chat.completions.create(
    model="yachtsy-survey-agent",
    messages=[{
        "role": "user",
        "content": "Survey this 1987 Catalina 34. Focus on hull condition, rigging, and engine. Check for common issues with this model year."
    }],
    stream=True
)

for chunk in response:
    if chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="")

Listing URL Analysis

const surveyStream = await client.chat.completions.create({
    model: 'yachtsy-survey-agent',
    messages: [{
        role: 'user',
        content: 'Survey this boat listing: https://sailboatlistings.com/view/123456. Analyze the photos and description for potential issues.'
    }],
    stream: true
});

for await (const chunk of surveyStream) {
    if (chunk.choices[0]?.delta?.content) {
        process.stdout.write(chunk.choices[0].delta.content);
    }
}

Focused Inspection

curl -N -X POST https://api.yachtsy.ai/v1/chat/completions \
  -H "Authorization: Bearer YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "yachtsy-survey-agent",
    "messages": [{
      "role": "user",
      "content": "Focus on electrical systems and engine condition for this 1995 Hunter 40. What should I look for during inspection?"
    }],
    "stream": true
  }'

Survey Report Structure

Professional Format

## Survey Report - [Year] [Make] [Model]

### Executive Summary
- Overall condition assessment
- Key findings and concerns
- Estimated repair costs
- Purchase recommendation

### Hull & Deck Inspection
- Gelcoat condition: [Assessment]
- Through-hulls: [Condition]
- Deck hardware: [Status]
- **Findings**: [Specific issues noted]

### Rigging Assessment  
- Standing rigging: [Condition]
- Running rigging: [Wear assessment]
- Sails: [Age and condition]
- **Recommendations**: [Immediate needs]

### Mechanical Systems
- Engine: [Hours, condition, maintenance]
- Fuel system: [Tank, lines, filters]
- Water system: [Tanks, pumps, plumbing]
- **Priority Items**: [Critical repairs needed]

### Electrical & Electronics
- Wiring: [Safety and condition]
- Battery system: [Capacity and age]
- Electronics: [Functionality and age]
- **Safety Concerns**: [Electrical hazards]

### Interior Condition
- Cabin: [Wear, damage, modifications]
- Head/Galley: [Plumbing, appliances]
- Storage: [Access, condition]
- **Comfort Factors**: [Livability assessment]

### Recommendations
1. **Immediate**: [Critical repairs needed before use]
2. **Short-term**: [Address within 6 months]
3. **Long-term**: [Future upgrades and maintenance]
4. **Budget**: [Estimated costs for repairs/upgrades]

Vision Analysis

Photo Analysis Capabilities

# Analyze specific boat photos
response = client.chat.completions.create(
    model="yachtsy-survey-agent",
    messages=[{
        "role": "user",
        "content": """
        Analyze these aspects from the boat photos:
        1. Hull condition - look for crazing, blisters, repairs
        2. Rigging condition - check for corrosion, wear, proper tension
        3. Deck condition - soft spots, hardware condition, non-skid wear
        4. Interior condition - signs of water damage, wear patterns
        
        Provide specific observations and risk assessments.
        """
    }],
    stream=True
)

Common Issues Detection

The agent is trained to identify:

  • Hull Issues: Osmotic blisters, gelcoat crazing, impact damage
  • Rigging Problems: Corrosion, fatigue, improper installation
  • Deck Concerns: Soft spots, hardware leaks, non-skid wear
  • Engine Issues: Oil leaks, corrosion, maintenance neglect
  • Electrical Problems: Unsafe wiring, corrosion, outdated systems

Integration with Other Agents

Complete Boat Evaluation Workflow

# 1. Research the model first
research = client.chat.completions.create(
    model="yachtsy-deep-research-agent",
    messages=[{"role": "user", "content": "Research Catalina 34 common issues and market value"}]
)

# 2. Find available boats
listings = client.chat.completions.create(
    model="yachtsy-listings-agent",
    messages=[{"role": "user", "content": "Find Catalina 34 boats under $50k"}]
)

# 3. Survey specific boats of interest
survey = client.chat.completions.create(
    model="yachtsy-survey-agent",
    messages=[{
        "role": "user",
        "content": "Survey this specific Catalina 34 listing. Focus on the common issues identified in the research phase."
    }],
    stream=True
)

Survey Types

Pre-Purchase Survey

"Complete pre-purchase survey for this [year] [make] [model]. Include condition assessment, repair estimates, and purchase recommendation."

Insurance Survey

"Insurance survey for [boat details]. Focus on safety systems, structural integrity, and compliance with insurance requirements."

Condition Assessment

"Assess current condition of [boat] for maintenance planning. Prioritize repairs and estimate costs."

Targeted Inspection

"Focus on [specific systems] for this [boat]. I'm concerned about [specific issues]."

Performance Optimization

Query Optimization

  • Be Specific: Include boat details (year, make, model)
  • Focus Areas: Specify systems of concern
  • Include Context: Mention intended use or concerns
  • Request Structure: Ask for organized reports

Streaming Benefits

import time

start_time = time.time()
survey_text = ""

stream = client.chat.completions.create(
    model="yachtsy-survey-agent",
    messages=[{
        "role": "user",
        "content": "Survey 1985 Catalina 34 for offshore cruising suitability"
    }],
    stream=True
)

print("Survey starting...")
for chunk in stream:
    if chunk.choices[0].delta.content:
        token = chunk.choices[0].delta.content
        survey_text += token
        print(token, end="", flush=True)
        
print(f"\n\nSurvey completed in {time.time() - start_time:.1f} seconds")

Professional Applications

Yacht Brokers

# Quick condition assessment for listings
assessment = client.chat.completions.create(
    model="yachtsy-survey-agent",
    messages=[{
        "role": "system",
        "content": "You are providing a preliminary condition assessment for a yacht broker. Focus on marketability and disclosure items."
    }, {
        "role": "user",
        "content": "Assess this boat's condition and identify any issues that should be disclosed to potential buyers."
    }]
)

Marine Surveyors

# Detailed technical inspection
technical_survey = client.chat.completions.create(
    model="yachtsy-survey-agent",
    messages=[{
        "role": "system", 
        "content": "You are conducting a detailed marine survey. Provide technical assessments with specific recommendations and cost estimates."
    }, {
        "role": "user",
        "content": "Complete structural and systems survey for insurance purposes. Include all safety-critical items."
    }],
    stream=True
)

Boat Buyers

# Pre-purchase evaluation
buyer_survey = client.chat.completions.create(
    model="yachtsy-survey-agent",
    messages=[{
        "role": "user",
        "content": "I'm considering buying this boat for coastal cruising. What should I look for during inspection? What are the deal-breakers vs fixable issues?"
    }],
    stream=True
)

Error Handling & Limitations

Common Issues

try:
    response = client.chat.completions.create(
        model="yachtsy-survey-agent",
        messages=[{"role": "user", "content": "survey request"}],
        stream=True
    )
    
except Exception as e:
    if "invalid url" in str(e).lower():
        print("Listing URL not accessible. Try with boat description instead.")
    elif "no images" in str(e).lower():
        print("No photos available for visual analysis. Provide boat details for assessment.")
    else:
        print(f"Survey failed: {str(e)}")

Limitations

  • Photo Quality: Analysis quality depends on image clarity
  • Remote Assessment: Cannot replace physical inspection
  • Regional Variations: Some local issues may not be covered
  • Age Factors: Very old boats may have limited data

Next Steps

Important: AI surveys supplement but do not replace professional marine surveys. Always hire a qualified surveyor for major purchases or insurance requirements.