{"allow_selection_changes": true, "analysis_api": {"benchmark_path": "/api/v1/analysis/benchmark", "benchmarks_path": "/api/v1/analysis/benchmarks", "dataset_profile_path": "/api/v1/analysis/dataset-profile", "default_budget_usd_ceiling": 60.0, "default_conversation_counts": [1000, 1400, 1500], "default_message_counts": [1000], "default_turn_window_messages": 12, "estimate_only": true, "estimate_scale_path": "/api/v1/analysis/estimate-scale", "report_path": "/api/v1/analysis/report", "runs_path": "/api/v1/analysis/runs", "supports_experiment_reports": true, "supports_scale_estimates": true}, "auth": {"browser": {"authorization_url": null, "client_id": null, "enabled": false, "logout_url": null, "scopes": ["openid", "crm-extractor/read", "crm-extractor/estimate", "crm-extractor/execute"], "token_url": null}, "enabled": false, "issuer": null, "required_scopes": {"estimate": "crm-extractor/estimate", "execute": "crm-extractor/execute", "read": "crm-extractor/read"}, "type": "none"}, "available_frameworks": ["current_house", "langextract"], "available_models": ["gemini-2.5-flash", "gemini-2.5-pro", "gpt-4o-mini", "gpt-4o", "gpt-5-mini", "openai/gpt-4o-mini", "google/gemini-2.5-flash-lite", "google/gemini-2.5-flash", "anthropic/claude-3-haiku", "anthropic/claude-sonnet-4.5", "anthropic/claude-fable-5", "deepseek/deepseek-chat", "qwen/qwen3.5-flash-02-23", "qwen/qwen3-235b-a22b-2507", "z-ai/glm-4.7-flash", "z-ai/glm-5.2", "openai/gpt-5.6-luna", "openai/gpt-5.6-terra", "openai/gpt-5.6-sol"], "available_providers": ["gemini", "openai", "openrouter"], "batch_modes_supported": ["chunk", "message_by_message"], "cors": {"allowed_origins": [], "enabled": false}, "csv_batch_api": {"accepted_column_groups": {"conversation_id": ["conversation_id", "contact_id", "thread_id", "lead_id"], "message_id": ["message_id", "id", "event_id"], "speaker": ["speaker", "role", "sender_type", "incoming", "is_incoming", "from_customer"], "text": ["contents", "content", "text", "message", "body"], "timestamp": ["timestamp", "created_at", "sent_at", "date"]}, "budget_fields": ["budget_usd_ceiling"], "content_type": "multipart/form-data", "contract_path": "/api/v1/contract", "default_budget_usd_ceiling": 5.0, "default_response_format": "zip", "estimate_path": "/api/v1/estimate-csv-batch", "expected_csv_columns": ["contact_id", "message_id", "timestamp", "speaker", "text"], "extract_path": "/api/v1/extract-csv-batch", "file_field_names": ["file", "files", "files[]"], "health_path": "/api/v1/health", "modes_supported": ["chunk", "message_by_message"], "multi_conversation_output_filename_pattern": "extracted_<uploaded_csv_stem>_<conversation_id>.json", "openapi_path": "/api/v1/openapi.json", "options_path": "/api/v1/options", "output_filename_pattern": "extracted_<uploaded_csv_stem>.json", "response_formats": ["zip", "inline_json"], "result_granularity": "conversation", "selection_fields": ["selection_profile", "provider", "model_id", "framework", "mode", "temperature", "reasoning_effort", "max_output_tokens", "chunk_size_messages"], "selection_per_request": true, "supports_multi_conversation_uploads": true}, "data_dictionary": {"data_dictionary_version": "real_estate_buyer_profile@4", "field_count": 39, "fields": [{"canonical_value_type": "free_text_name", "data_classification": "direct_contact", "description": "Buyer full name or preferred name when the customer explicitly shares it.", "field_id": "name", "field_type": "text", "multi_value": false, "required": false, "score_in_primary_benchmark": false}, {"canonical_value_type": "e164_or_digits", "data_classification": "direct_contact", "description": "Primary phone or WhatsApp number explicitly confirmed for follow-up contact.", "field_id": "phone_number", "field_type": "phone", "multi_value": false, "required": false, "score_in_primary_benchmark": false}, {"canonical_value_type": "email", "data_classification": "direct_contact", "description": "Primary email address explicitly shared for project follow-up or document exchange.", "field_id": "email", "field_type": "email", "multi_value": false, "required": false, "score_in_primary_benchmark": false}, {"canonical_value_type": "cpf_or_cnpj_digits", "data_classification": "direct_contact", "description": "CPF or CNPJ explicitly shared for CRM identity confirmation.", "field_id": "legal_id_document", "field_type": "brazilian_tax_id", "multi_value": false, "required": false, "score_in_primary_benchmark": false}, {"canonical_value_type": "yyyy", "data_classification": "direct_contact", "description": "Birth year only when the buyer explicitly shares it or when it is quoted from an existing CRM context.", "field_id": "birth_year", "field_type": "text", "multi_value": false, "required": false, "score_in_primary_benchmark": false}, {"canonical_value_type": "enum", "data_classification": "direct_contact", "description": "Gender only when the buyer explicitly identifies it or when it is quoted from existing CRM context.", "field_id": "gender", "field_type": "enum", "multi_value": false, "required": false, "score_in_primary_benchmark": false}, {"canonical_value_type": "integer", "data_classification": "customer_intent", "description": "Number of adults who will live in the property as a string integer.", "field_id": "household_adult_count", "field_type": "text", "multi_value": false, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "integer", "data_classification": "customer_intent", "description": "Number of children or dependents who will live in the property as a string integer.", "field_id": "household_child_count", "field_type": "text", "multi_value": false, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "list[enum]", "data_classification": "customer_intent", "description": "Who will live in the property as a list of canonical member categories.", "field_id": "household_member_types", "field_type": "text", "multi_value": true, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "short_free_text", "data_classification": "customer_intent", "description": "Residual household composition note when counts or member types cannot fully represent the customer wording.", "field_id": "household_composition_note", "field_type": "text", "multi_value": false, "required": false, "score_in_primary_benchmark": false}, {"canonical_value_type": "canonical_city", "data_classification": "location_profile", "description": "Current city of residence when the customer mentions where they live today.", "field_id": "current_city", "field_type": "text", "multi_value": false, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "list[canonical_city]", "data_classification": "location_profile", "description": "Cities where the buyer wants to search or buy a property.", "field_id": "preferred_city", "field_type": "text", "multi_value": true, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "list[canonical_city]", "data_classification": "location_profile", "description": "Cities explicitly rejected by the buyer during the conversation.", "field_id": "excluded_cities", "field_type": "text", "multi_value": true, "required": false, "score_in_primary_benchmark": false}, {"canonical_value_type": "list[canonical_region]", "data_classification": "location_profile", "description": "Broader regions, zones, or landmark-based areas inside the preferred city that the buyer accepts.", "field_id": "preferred_region", "field_type": "text", "multi_value": true, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "list[canonical_region]", "data_classification": "location_profile", "description": "Broader regions or zones explicitly rejected by the buyer during the conversation.", "field_id": "excluded_regions", "field_type": "text", "multi_value": true, "required": false, "score_in_primary_benchmark": false}, {"canonical_value_type": "list[canonical_neighborhood]", "data_classification": "location_profile", "description": "Neighborhoods or micro-areas the buyer explicitly asks for or accepts.", "field_id": "preferred_neighborhoods", "field_type": "text", "multi_value": true, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "list[canonical_neighborhood]", "data_classification": "location_profile", "description": "Neighborhoods explicitly rejected by the buyer during the conversation.", "field_id": "excluded_neighborhoods", "field_type": "text", "multi_value": true, "required": false, "score_in_primary_benchmark": false}, {"canonical_value_type": "list[enum]", "data_classification": "customer_intent", "description": "Property types the buyer explicitly requests or accepts.", "field_id": "preferred_property_types", "field_type": "text", "multi_value": true, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "list[enum]", "data_classification": "customer_intent", "description": "Bedroom counts the buyer explicitly requests or accepts as a list.", "field_id": "preferred_bedrooms", "field_type": "text", "multi_value": true, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "enum", "data_classification": "customer_intent", "description": "How the buyer relates to parking availability as a property filter.", "field_id": "parking_requirement", "field_type": "enum", "multi_value": false, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "list[proximity_target]", "data_classification": "customer_intent", "description": "List of places, services, or facilities the buyer wants the property to be near.", "field_id": "proximity_preferences", "field_type": "text", "multi_value": true, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "boolean", "data_classification": "customer_intent", "description": "Whether the buyer explicitly requires a gated community or condominium setting.", "field_id": "needs_gated_community", "field_type": "boolean", "multi_value": false, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "boolean", "data_classification": "customer_intent", "description": "Whether pet-friendly rules or features are a stated requirement.", "field_id": "pet_friendly_required", "field_type": "boolean", "multi_value": false, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "list[enum]", "data_classification": "customer_intent", "description": "Buyer preference for launch stage or move-in readiness including used/resale properties.", "field_id": "property_condition_preference", "field_type": "enum", "multi_value": true, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "integer_brl", "data_classification": "financial_profile", "description": "Maximum total property price the buyer says they want, can pay, or were approved to target. This is the purchase ceiling, not the monthly installment and not the down payment.", "field_id": "budget_max_brl", "field_type": "currency", "multi_value": false, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "list[enum]", "data_classification": "financial_profile", "description": "Payment methods the buyer plans or accepts to use in the purchase composition.", "field_id": "payment_methods", "field_type": "text", "multi_value": true, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "enum", "data_classification": "financial_profile", "description": "How the buyer expects to fund the purchase from a credit and financing state perspective.", "field_id": "financing_status", "field_type": "enum", "multi_value": false, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "integer_brl", "data_classification": "financial_profile", "description": "Gross monthly income the buyer explicitly shares for financing qualification. Do not store property budget or monthly installment here.", "field_id": "monthly_income_brl", "field_type": "currency", "multi_value": false, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "integer_brl", "data_classification": "financial_profile", "description": "Maximum monthly installment the buyer says is comfortable or acceptable. This is a monthly payment ceiling, not the full property budget and not the down payment.", "field_id": "comfortable_installment_max_brl", "field_type": "currency", "multi_value": false, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "integer_brl", "data_classification": "financial_profile", "description": "Maximum amount the buyer can pay upfront as down payment or cash entry. This is the upfront contribution, not the full property budget and not the monthly installment.", "field_id": "down_payment_max_brl", "field_type": "currency", "multi_value": false, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "boolean", "data_classification": "financial_profile", "description": "Whether the buyer explicitly wants or expects to use FGTS in the purchase composition.", "field_id": "uses_fgts", "field_type": "boolean", "multi_value": false, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "integer_brl", "data_classification": "financial_profile", "description": "Amount of FGTS the buyer says is available to use in the purchase.", "field_id": "fgts_available_brl", "field_type": "currency", "multi_value": false, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "enum", "data_classification": "customer_intent", "description": "How the buyer intends to use the property once purchased.", "field_id": "intended_use", "field_type": "enum", "multi_value": false, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "enum", "data_classification": "customer_intent", "description": "Expected purchase timeline based on the buyer's own words.", "field_id": "purchase_timeline", "field_type": "enum", "multi_value": false, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "list[enum]", "data_classification": "customer_intent", "description": "Event dependencies that explain a conditional purchase timeline.", "field_id": "purchase_timeline_conditions", "field_type": "text", "multi_value": true, "required": false, "score_in_primary_benchmark": true}, {"canonical_value_type": "enum", "data_classification": "direct_contact", "description": "Preferred outreach channel for project follow-up or human handoff.", "field_id": "preferred_contact_channel", "field_type": "enum", "multi_value": false, "required": false, "score_in_primary_benchmark": false}, {"canonical_value_type": "enum", "data_classification": "direct_contact", "description": "Preferred time window for follow-up contact.", "field_id": "preferred_contact_time", "field_type": "enum", "multi_value": false, "required": false, "score_in_primary_benchmark": false}, {"canonical_value_type": "canonical_project_name", "data_classification": "customer_intent", "description": "Project or development explicitly chosen by the buyer during the conversation.", "field_id": "selected_project_name", "field_type": "text", "multi_value": false, "required": false, "score_in_primary_benchmark": false}, {"canonical_value_type": "free_text_note", "data_classification": "customer_intent", "description": "Additional relevant buyer notes that materially affect matching or handoff and do not belong in another field.", "field_id": "extra_info", "field_type": "text", "multi_value": false, "required": false, "score_in_primary_benchmark": false}], "form_id": "real_estate_buyer_profile", "form_ref": "real_estate_buyer_profile@4", "form_version": "4", "locale": "pt-BR"}, "defaults": {"chunk_size_messages": null, "form_ref": "real_estate_buyer_profile@4", "framework": "current_house", "max_output_tokens": null, "mode": "chunk", "model_id": "gpt-5-mini", "provider": "openai", "reasoning_effort": null, "selection_profile": null, "temperature": null}, "execution_policy": {"allow_selection_changes": true, "configured_provider_model_map": {"gemini": ["gemini-2.5-flash", "gemini-2.5-pro"], "openai": ["gpt-4o-mini", "gpt-4o", "gpt-5-mini"], "openrouter": ["openai/gpt-4o-mini", "google/gemini-2.5-flash-lite", "google/gemini-2.5-flash", "anthropic/claude-3-haiku", "anthropic/claude-sonnet-4.5", "anthropic/claude-fable-5", "deepseek/deepseek-chat", "qwen/qwen3.5-flash-02-23", "qwen/qwen3-235b-a22b-2507", "z-ai/glm-4.7-flash", "z-ai/glm-5.2", "openai/gpt-5.6-luna", "openai/gpt-5.6-terra", "openai/gpt-5.6-sol"]}, "enabled_batch_modes": ["chunk", "message_by_message"], "enabled_frameworks": ["current_house", "langextract"], "enabled_memory_modes": ["turn"], "enabled_provider_model_map": {"gemini": ["gemini-2.5-flash", "gemini-2.5-pro"], "openai": ["gpt-4o-mini", "gpt-4o", "gpt-5-mini"], "openrouter": ["openai/gpt-4o-mini", "google/gemini-2.5-flash-lite", "google/gemini-2.5-flash", "anthropic/claude-3-haiku", "anthropic/claude-sonnet-4.5", "anthropic/claude-fable-5", "deepseek/deepseek-chat", "qwen/qwen3.5-flash-02-23", "qwen/qwen3-235b-a22b-2507", "z-ai/glm-4.7-flash", "z-ai/glm-5.2", "openai/gpt-5.6-luna", "openai/gpt-5.6-terra", "openai/gpt-5.6-sol"]}, "enabled_selection_profiles": ["turn_low_cost", "chunk_balanced", "openrouter_balanced", "openrouter_gemini_flash", "openrouter_gemini_flash_lite", "openrouter_claude_haiku", "openrouter_claude_sonnet", "openrouter_claude_fable_5", "openrouter_low_cost_turn", "openrouter_qwen_budget", "openrouter_qwen_quality", "openrouter_zai_budget", "openrouter_zai_quality", "openrouter_gpt56_luna_turn", "openrouter_gpt56_terra_chunk", "openrouter_gpt56_sol_chunk"], "locked_setup": null, "provider_status": [{"capabilities": {"estimate": false, "extract": false}, "credential_configured": true, "enabled": false, "enabled_models": [], "live_calls_enabled": false, "provider": "fixture", "registered": true, "registered_models": ["fixture-current-house"], "unavailable_reason": "not_allowlisted"}, {"capabilities": {"estimate": true, "extract": true}, "credential_configured": true, "enabled": true, "enabled_models": ["gemini-2.5-flash", "gemini-2.5-pro"], "live_calls_enabled": true, "provider": "gemini", "registered": true, "registered_models": ["gemini-2.5-flash", "gemini-2.5-pro"], "unavailable_reason": null}, {"capabilities": {"estimate": true, "extract": true}, "credential_configured": true, "enabled": true, "enabled_models": ["gpt-4o-mini", "gpt-4o", "gpt-5-mini"], "live_calls_enabled": true, "provider": "openai", "registered": true, "registered_models": ["gpt-4o-mini", "gpt-4o", "gpt-5-mini"], "unavailable_reason": null}, {"capabilities": {"estimate": true, "extract": true}, "credential_configured": true, "enabled": true, "enabled_models": ["openai/gpt-4o-mini", "google/gemini-2.5-flash-lite", "google/gemini-2.5-flash", "anthropic/claude-3-haiku", "anthropic/claude-sonnet-4.5", "anthropic/claude-fable-5", "deepseek/deepseek-chat", "qwen/qwen3.5-flash-02-23", "qwen/qwen3-235b-a22b-2507", "z-ai/glm-4.7-flash", "z-ai/glm-5.2", "openai/gpt-5.6-luna", "openai/gpt-5.6-terra", "openai/gpt-5.6-sol"], "live_calls_enabled": true, "provider": "openrouter", "registered": true, "registered_models": ["openai/gpt-4o-mini", "google/gemini-2.5-flash-lite", "google/gemini-2.5-flash", "anthropic/claude-3-haiku", "anthropic/claude-sonnet-4.5", "anthropic/claude-fable-5", "deepseek/deepseek-chat", "qwen/qwen3.5-flash-02-23", "qwen/qwen3-235b-a22b-2507", "z-ai/glm-4.7-flash", "z-ai/glm-5.2", "openai/gpt-5.6-luna", "openai/gpt-5.6-terra", "openai/gpt-5.6-sol", "deepseek/deepseek-v4-flash", "deepseek/deepseek-v4-pro"], "unavailable_reason": null}]}, "financial_guardrails": {"estimate_first": true, "implementation_budget_usd": 60.0, "live_flag_required": true, "max_request_cost_usd": 5.0}, "frameworks": ["current_house", "langextract"], "golden_set_available": true, "golden_set_count": 40, "golden_set_policy": {"include_below_min_messages": true, "non_golden_min_messages": 20, "ordered_first": true, "requires_source_conversation": true}, "golden_source_available_count": 29, "golden_source_unavailable_count": 11, "implementation_budget_usd": 60.0, "input_modes": ["messages", "conversation_id"], "input_modes_by_endpoint": {"extract": ["messages", "conversation_id"], "memory_estimate": ["messages", "conversation_id"], "memory_update": ["messages", "conversation_id"]}, "json_api": {"contract_path": "/api/v1/contract", "conversation_path_pattern": "/api/v1/conversations/{conversation_id}", "conversations_path": "/api/v1/conversations", "estimate_path": "/api/v1/estimate", "extract_path": "/api/v1/extract", "golden_crm_path_pattern": "/api/v1/golden-set/{conversation_id}", "golden_set_path": "/api/v1/golden-set", "health_path": "/api/v1/health", "latest_crm_path_pattern": "/api/v1/crms/{conversation_id}", "legacy_aliases": {"conversation_path_pattern": "/api/conversations/{conversation_id}", "conversations_path": "/api/conversations", "estimate_path": "/api/estimate", "extract_path": "/api/extract", "golden_crm_path_pattern": "/api/golden-set/{conversation_id}", "golden_set_path": "/api/golden-set", "latest_crm_path_pattern": "/api/crms/{conversation_id}", "memory_estimate_path": "/api/memory/estimate", "memory_update_path": "/api/memory/update"}, "memory_estimate_path": "/api/v1/memory/estimate", "memory_update_path": "/api/v1/memory/update", "options_path": "/api/v1/options", "selection_fields": ["selection_profile", "provider", "model_id", "framework", "mode", "form_ref", "temperature", "reasoning_effort", "max_output_tokens", "chunk_size_messages"]}, "methodology": {"active_form_ref": "real_estate_buyer_profile@4", "architecture_candidates": [{"input_scope": "fixed number of messages supplied by chunk_size_messages; when omitted, only the context-safety text budget splits calls", "mode": "chunk", "status": "primary"}, {"input_scope": "recent message window for one CRM memory refresh; a chatbot typically invokes it once per triggered message event", "mode": "turn", "status": "secondary"}, {"input_scope": "one prompt with the whole conversation", "mode": "full_conversation", "status": "planned_experiment"}, {"input_scope": "one extraction call per message followed by deterministic CRM merge; this is distinct from the stateful turn memory endpoint", "mode": "message_by_message", "status": "experimental"}], "cost_kind_definitions": {"billing_actual": "Cost reported for one or more concrete provider generations by a provider billing/usage API. OpenRouter is implemented through GET /api/v1/generation; this is not the consolidated account invoice.", "estimated": "Cost uses token estimates plus the local PRICE_TABLE. This is planning evidence only and must be marked as estimated.", "provider_usage": "Cost uses token counts returned by the provider API plus the local PRICE_TABLE. Token volume is more precise than an estimate, but the USD value is still not a billing ledger."}, "cost_methodology": {"architecture_normalization": {"chunk_calls": "ceil(messages / chunk_size_messages), with additional calls when the context-safety splitter bounds an oversized message. When chunk_size_messages is omitted, the conversation is grouped only by the context-safety text budget.", "comparison_unit": "1000 message events", "message_by_message_calls": "One call per message, with additional calls only when one individual message must be segmented for context safety.", "turn_calls": "1000 * turn_trigger_rate, because chatbot CRM memory is refreshed on each triggered message event.", "why_turn_uses_more_tokens": "Every turn call repeats the CRM instructions, 39-field schema, recent context window, and a generated CRM result."}, "billing_reconciliation_support": {"gemini": {"status": "pending_provider_specific_billing_export"}, "openai": {"status": "pending_provider_specific_account_export"}, "openrouter": {"command": "crm-extractor reconcile-openrouter-cost", "cost_kind": "billing_actual", "source": "GET https://openrouter.ai/api/v1/generation?id=<generation_id>", "status": "implemented"}}, "formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "limitations": ["Provider prices change; refresh current prices before paid pilots.", "Provider usage tokens do not include invoice adjustments, credits, minimum charges, or taxes.", "OpenRouter routed prices can differ from direct-provider prices for the same underlying model family.", "OpenRouter billing_actual is per generation, not an account invoice; OpenAI and Gemini account reconciliation remain pending."], "price_unit": "USD per 1 million input tokens and USD per 1 million output tokens.", "source_definitions": {"deterministic_fixture_no_provider_cost": {"confidence": "deterministic_zero_cost", "meaning": "Local fixture execution; no external provider call and zero provider cost.", "paid_run_action": "No price verification required.", "source": "fixture"}, "manual_estimate_verify_before_paid_run": {"confidence": "planning_only", "meaning": "Manual price entered in PRICE_TABLE for planning. Treat as a placeholder until someone verifies the provider's official price immediately before a paid run.", "paid_run_action": "Verify current provider pricing and update the table or runbook.", "source": "local PRICE_TABLE"}, "verified_official_provider_page": {"confidence": "official_catalog_snapshot", "last_verified_at": "2026-07-26", "meaning": "Direct-provider price copied from the provider's official model or pricing page. The date is recorded in last_verified_at.", "paid_run_action": "Recheck the official page immediately before a paid pilot.", "source": "official provider pricing page"}, "verified_openrouter_models_api": {"confidence": "catalog_snapshot", "last_verified_at": "2026-07-27", "meaning": "OpenRouter routed-model price copied from the public models API snapshot at https://openrouter.ai/api/v1/models.", "paid_run_action": "Refresh OpenRouter model availability and price before a paid pilot.", "source": "https://openrouter.ai/api/v1/models"}}, "token_sources": {"billing_actual": "OpenRouter reconciliation uses native prompt/completion tokens and total_cost returned for each generation ID.", "estimate_only": "Uses local token assumptions/counts from the input and configured output cap. It does not call providers.", "fallback_estimate": "If a live provider response has no usage metadata, the USD value remains estimated and cost_kind stays estimated.", "provider_usage": "Uses usage tokens returned by OpenAI, Gemini, or OpenRouter when their API response includes usage metadata."}, "where_prices_are_exposed": ["/api/v1/options providers[].model_details[].pricing", "/api/v1/estimate pricing", "/api/v1/extract metadata.pricing", "experiment_manifest.jsonl rows[].pricing", "experiment_decision_report pricing_provenance_summary", "reconcile-openrouter-cost sanitized billing_actual report"], "where_prices_live": "src/crm_extractor/providers/pricing.py::PRICE_TABLE"}, "data_dictionary_version": "real_estate_buyer_profile@4", "error_category_definitions": {"budget_exceeded": "The estimate or run exceeded the configured USD budget guardrail.", "incomplete_response": "The provider returned empty, truncated, or structurally incomplete content.", "invalid_json": "The model response could not be parsed as valid JSON.", "invalid_schema": "JSON was returned but did not satisfy the expected CRM/provider schema.", "live_guardrail": "A paid call was blocked because CRM_EXTRACTOR_LIVE=1 was not enabled.", "not_found": "A requested local/API resource was not found.", "provider_unavailable": "The provider was unavailable, rate-limited, or returned a service error.", "retry_exhausted": "The retry or failure-threshold policy stopped additional attempts.", "storage_unavailable": "The configured CRM store could not be reached or authenticated.", "timeout": "The provider or guarded matrix row exceeded its configured wall-clock limit.", "unknown": "The sanitized error did not match a stable category yet and requires triage.", "validation_error": "Input or generated CRM data failed local validation."}, "error_taxonomy_version": "model_error_taxonomy_v1", "experimental_modes": ["message_by_message"], "framework_prompt_versions": {"current_house": "current_house_chunk_v3_bounded_input", "langextract": "langextract_chunk_pack_v3_bounded_input"}, "latency_methodology": {"batch_total_metric": "CSV batch responses expose latency_breakdown_ms.total_ms around CSV parsing, estimate preflight, and all serial extraction calls. HTTP transfer, client rendering, and final ZIP serialization are outside that boundary. Per-conversation latency_ms remains the service runtime for that conversation.", "clock_source": "Python time.perf_counter() around each backend stage.", "frontend_metric": "The static frontend additionally measures frontend_roundtrip_ms around fetch/form uploads. This is displayed in the UI but is not part of backend latency reports unless a client persists it.", "interactive_turn_rule": "For a chatbot, turn latency is the observed wall-clock latency of one memory refresh request. Serial latency for 1000 messages is not user-perceived latency; capacity planning must separately model concurrency, queues, provider quotas, retries, and debounce policy.", "measurement_type": "observed_wall_clock_ms", "normalization_rule": "Average latency is computed only over completed rows for the same setup. Reports expose completion rate and multiply quality on completed rows by that rate for ranking/Pareto comparisons. Success/failure counts must remain beside latency.", "not_included": ["Queue wait time unless a future queue stage records it explicitly.", "Human annotation/review time.", "External dashboard rendering time.", "Provider billing reconciliation time."], "primary_runtime_metric": "metadata.latency_ms and latency_breakdown_ms.total_ms", "projection_rule": "Experiment reports project latency by multiplying observed average latency per completed extraction by the target conversation count. This is a normalized comparison, not a production SLA.", "runtime_total_metric": "latency_breakdown_ms.runtime_total_ms wraps the runtime service call around extraction and metadata assembly."}, "latency_schema_version": "latency_breakdown_v2", "latency_stage_definitions": {"chunking_ms": "Conversation chunk construction.", "estimate_ms": "Estimate preflight time for a request or CSV batch.", "extraction_ms": "Wall-clock time spent executing all conversation extractions in a CSV batch.", "frontend_roundtrip_ms": "Browser-observed request/response time measured by the frontend when available.", "input_load_ms": "CSV/request parsing and message loading before extraction when the caller records it.", "merge_ms": "CRM merge across chunks.", "parsing_ms": "Provider JSON parsing and field validation.", "prompt_build_ms": "Prompt rendering before provider calls.", "provider_call_ms": "Provider API/client time across all calls.", "runtime_total_ms": "Runtime service wrapper around extraction plus metadata assembly.", "service_total_ms": "Live service boundary including catalog work, extraction, and CRM store persistence.", "store_ms": "CRM store write/read operation when configured.", "total_ms": "End-to-end runtime time captured by this service surface.", "validation_ms": "Runtime CRM contract validation."}, "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "primary_mode": "chunk", "secondary_mode": "turn", "setup_id_compatibility": "setup_id_v3 adds turn_window to keep recent-window turn architectures distinct. Historical setup_id_v2 values remain valid evidence and are not rewritten.", "setup_id_parameters": ["temperature", "max_output_tokens", "reasoning_effort", "chunk_size_messages", "turn_window_messages"], "setup_id_version": "setup_id_v3", "status_definitions": {"ambiguous": "Useful signal exists but evidence is insufficient or contradictory.", "captured": "Field value is supported by customer evidence.", "missing": "No safely supported value is present."}}, "methodology_api": {"contract_path": "/api/v1/contract", "data_dictionary_version": "real_estate_buyer_profile@4", "methodology_path": "/api/v1/methodology", "setup_id_version": "setup_id_v3"}, "min_messages": 20, "model_ids": ["gemini-2.5-flash", "gemini-2.5-pro", "gpt-4o-mini", "gpt-4o", "gpt-5-mini", "openai/gpt-4o-mini", "google/gemini-2.5-flash-lite", "google/gemini-2.5-flash", "anthropic/claude-3-haiku", "anthropic/claude-sonnet-4.5", "anthropic/claude-fable-5", "deepseek/deepseek-chat", "qwen/qwen3.5-flash-02-23", "qwen/qwen3-235b-a22b-2507", "z-ai/glm-4.7-flash", "z-ai/glm-5.2", "openai/gpt-5.6-luna", "openai/gpt-5.6-terra", "openai/gpt-5.6-sol"], "models": ["gemini-2.5-flash", "gemini-2.5-pro", "gpt-4o-mini", "gpt-4o", "gpt-5-mini", "openai/gpt-4o-mini", "google/gemini-2.5-flash-lite", "google/gemini-2.5-flash", "anthropic/claude-3-haiku", "anthropic/claude-sonnet-4.5", "anthropic/claude-fable-5", "deepseek/deepseek-chat", "qwen/qwen3.5-flash-02-23", "qwen/qwen3-235b-a22b-2507", "z-ai/glm-4.7-flash", "z-ai/glm-5.2", "openai/gpt-5.6-luna", "openai/gpt-5.6-terra", "openai/gpt-5.6-sol"], "modes_supported": ["chunk", "message_by_message", "turn"], "parameter_constraints": {"chunk_size_messages": {"applies_to_modes": ["chunk"], "default": null, "maximum": 10000, "message_by_message_effective_value": 1, "minimum": 1}, "max_output_tokens": {"default": 4096, "maximum": 32768, "minimum": 1}, "reasoning_effort": {"allowed_values_by_model": true, "default": null}, "temperature": {"default": null, "maximum": 2, "minimum": 0}}, "provider_catalog": {"batch_modes_supported": ["chunk", "message_by_message"], "frameworks": ["current_house", "langextract"], "modes_supported": ["chunk", "message_by_message", "turn"], "provider_model_map": {"fixture": ["fixture-current-house"], "gemini": ["gemini-2.5-flash", "gemini-2.5-pro"], "openai": ["gpt-4o-mini", "gpt-4o", "gpt-5-mini"], "openrouter": ["openai/gpt-4o-mini", "google/gemini-2.5-flash-lite", "google/gemini-2.5-flash", "anthropic/claude-3-haiku", "anthropic/claude-sonnet-4.5", "anthropic/claude-fable-5", "deepseek/deepseek-chat", "qwen/qwen3.5-flash-02-23", "qwen/qwen3-235b-a22b-2507", "z-ai/glm-4.7-flash", "z-ai/glm-5.2", "openai/gpt-5.6-luna", "openai/gpt-5.6-terra", "openai/gpt-5.6-sol", "deepseek/deepseek-v4-flash", "deepseek/deepseek-v4-pro"]}, "providers": [{"default_model": "fixture-current-house", "model_details": [{"candidate_class": "deterministic_baseline", "cost_tier": "free", "is_default": true, "latency_tier": "local", "model_id": "fixture-current-house", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": false, "temperature_default": null, "temperature_max": null, "temperature_min": null}, "pricing": {"approximate": false, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "deterministic_zero_cost", "input_usd_per_1m_tokens": 0.0, "input_usd_per_token": 0.0, "last_verified_at": "", "model_id": "fixture-current-house", "output_usd_per_1m_tokens": 0.0, "output_usd_per_token": 0.0, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "deterministic_fixture_no_provider_cost", "provider": "fixture", "source": "fixture", "source_conversion": "none", "source_description": "Local deterministic fixture provider. It does not call an external LLM provider, so the modeled provider cost is always zero.", "source_model_id": "fixture-current-house", "source_native_unit": "usd_per_1m_tokens", "source_url": "", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": false}, "quality_tier": "fixture", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/fixture/fixture-current-house/chunk/real_estate_buyer_profile@4/temp=default,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}], "models": ["fixture-current-house"], "provider": "fixture"}, {"default_model": "gemini-2.5-flash", "model_details": [{"candidate_class": "low_cost_fast", "cost_tier": "low", "is_default": true, "latency_tier": "fast", "model_id": "gemini-2.5-flash", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "thinking_budget_0", "reasoning_effort_supported": ["thinking_budget_0", "thinking_budget_1024", "thinking_budget_8192", "thinking_budget_24576", "thinking_budget_dynamic"], "reasoning_effort_user_configurable": true, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": false, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "official_catalog_snapshot", "input_usd_per_1m_tokens": 0.3, "input_usd_per_token": 3e-07, "last_verified_at": "2026-07-26", "model_id": "gemini-2.5-flash", "output_usd_per_1m_tokens": 2.5, "output_usd_per_token": 2.5e-06, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_official_provider_page", "provider": "gemini", "source": "official_provider_pricing_page", "source_conversion": "none", "source_description": "Price transcribed from the official Google Gemini model/pricing page. It is a dated catalog snapshot and must be refreshed before a paid pilot because provider prices can change.", "source_model_id": "gemini-2.5-flash", "source_native_unit": "usd_per_1m_tokens", "source_url": "https://ai.google.dev/gemini-api/docs/pricing", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "balanced", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "thinking_budget_0", "setup_id": "current_house@current_house_chunk_v3_bounded_input/gemini/gemini-2.5-flash/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=thinking_budget_0,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "quality_sensitive_chunk", "cost_tier": "high", "is_default": false, "latency_tier": "slower", "model_id": "gemini-2.5-pro", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "thinking_budget_128", "reasoning_effort_supported": ["thinking_budget_128", "thinking_budget_2048", "thinking_budget_8192", "thinking_budget_32768", "thinking_budget_dynamic"], "reasoning_effort_user_configurable": true, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": false, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "official_catalog_snapshot", "input_usd_per_1m_tokens": 1.25, "input_usd_per_token": 1.25e-06, "last_verified_at": "2026-07-26", "model_id": "gemini-2.5-pro", "output_usd_per_1m_tokens": 10.0, "output_usd_per_token": 1e-05, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_official_provider_page", "provider": "gemini", "source": "official_provider_pricing_page", "source_conversion": "none", "source_description": "Price transcribed from the official Google Gemini model/pricing page. It is a dated catalog snapshot and must be refreshed before a paid pilot because provider prices can change.", "source_model_id": "gemini-2.5-pro", "source_native_unit": "usd_per_1m_tokens", "source_url": "https://ai.google.dev/gemini-api/docs/pricing", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "high", "recommended_modes": ["chunk"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "thinking_budget_128", "setup_id": "current_house@current_house_chunk_v3_bounded_input/gemini/gemini-2.5-pro/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=thinking_budget_128,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}], "models": ["gemini-2.5-flash", "gemini-2.5-pro"], "provider": "gemini"}, {"default_model": "gpt-4o-mini", "model_details": [{"candidate_class": "low_cost_fast", "cost_tier": "low", "is_default": true, "latency_tier": "fast", "model_id": "gpt-4o-mini", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": false, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "official_catalog_snapshot", "input_usd_per_1m_tokens": 0.15, "input_usd_per_token": 1.5e-07, "last_verified_at": "2026-07-26", "model_id": "gpt-4o-mini", "output_usd_per_1m_tokens": 0.6, "output_usd_per_token": 6e-07, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_official_provider_page", "provider": "openai", "source": "official_provider_pricing_page", "source_conversion": "none", "source_description": "Price transcribed from the official OpenAI model/pricing page. It is a dated catalog snapshot and must be refreshed before a paid pilot because provider prices can change.", "source_model_id": "gpt-4o-mini", "source_native_unit": "usd_per_1m_tokens", "source_url": "https://developers.openai.com/api/docs/models/gpt-4o-mini", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "balanced", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openai/gpt-4o-mini/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "quality_sensitive_chunk", "cost_tier": "high", "is_default": false, "latency_tier": "medium", "model_id": "gpt-4o", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": false, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "official_catalog_snapshot", "input_usd_per_1m_tokens": 2.5, "input_usd_per_token": 2.5e-06, "last_verified_at": "2026-07-26", "model_id": "gpt-4o", "output_usd_per_1m_tokens": 10.0, "output_usd_per_token": 1e-05, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_official_provider_page", "provider": "openai", "source": "official_provider_pricing_page", "source_conversion": "none", "source_description": "Price transcribed from the official OpenAI model/pricing page. It is a dated catalog snapshot and must be refreshed before a paid pilot because provider prices can change.", "source_model_id": "gpt-4o", "source_native_unit": "usd_per_1m_tokens", "source_url": "https://developers.openai.com/api/docs/models/gpt-4o", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "high", "recommended_modes": ["chunk"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openai/gpt-4o/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "balanced_chunk", "cost_tier": "medium", "is_default": false, "latency_tier": "medium", "model_id": "gpt-5-mini", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "low", "reasoning_effort_supported": ["minimal", "low", "medium", "high"], "reasoning_effort_user_configurable": true, "temperature": false, "temperature_default": null, "temperature_max": null, "temperature_min": null}, "pricing": {"approximate": false, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "official_catalog_snapshot", "input_usd_per_1m_tokens": 0.25, "input_usd_per_token": 2.5e-07, "last_verified_at": "2026-07-26", "model_id": "gpt-5-mini", "output_usd_per_1m_tokens": 2.0, "output_usd_per_token": 2e-06, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_official_provider_page", "provider": "openai", "source": "official_provider_pricing_page", "source_conversion": "none", "source_description": "Price transcribed from the official OpenAI model/pricing page. It is a dated catalog snapshot and must be refreshed before a paid pilot because provider prices can change.", "source_model_id": "gpt-5-mini", "source_native_unit": "usd_per_1m_tokens", "source_url": "https://developers.openai.com/api/docs/models/gpt-5-mini", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "balanced_high", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "low", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openai/gpt-5-mini/chunk/real_estate_buyer_profile@4/temp=default,max_out=4096,reasoning=low,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}], "models": ["gpt-4o-mini", "gpt-4o", "gpt-5-mini"], "provider": "openai"}, {"default_model": "openai/gpt-4o-mini", "model_details": [{"candidate_class": "openrouter_low_cost_fast", "cost_tier": "low", "is_default": true, "latency_tier": "fast", "model_id": "openai/gpt-4o-mini", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.15, "input_usd_per_token": 1.5e-07, "last_verified_at": "2026-07-27", "model_id": "openai/gpt-4o-mini", "output_usd_per_1m_tokens": 0.6, "output_usd_per_token": 6e-07, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "openai/gpt-4o-mini", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "balanced", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/openai%2Fgpt-4o-mini/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_budget_fast", "cost_tier": "very_low", "is_default": false, "latency_tier": "fast", "model_id": "google/gemini-2.5-flash-lite", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.1, "input_usd_per_token": 1e-07, "last_verified_at": "2026-07-27", "model_id": "google/gemini-2.5-flash-lite", "output_usd_per_1m_tokens": 0.4, "output_usd_per_token": 4e-07, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "google/gemini-2.5-flash-lite", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "budget_balanced", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/google%2Fgemini-2.5-flash-lite/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_low_cost_fast", "cost_tier": "low", "is_default": false, "latency_tier": "fast", "model_id": "google/gemini-2.5-flash", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.3, "input_usd_per_token": 3e-07, "last_verified_at": "2026-07-27", "model_id": "google/gemini-2.5-flash", "output_usd_per_1m_tokens": 2.5, "output_usd_per_token": 2.5e-06, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "google/gemini-2.5-flash", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "balanced", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/google%2Fgemini-2.5-flash/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_balanced_chunk", "cost_tier": "medium", "is_default": false, "latency_tier": "medium", "model_id": "anthropic/claude-3-haiku", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.25, "input_usd_per_token": 2.5e-07, "last_verified_at": "2026-07-27", "model_id": "anthropic/claude-3-haiku", "output_usd_per_1m_tokens": 1.25, "output_usd_per_token": 1.25e-06, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "anthropic/claude-3-haiku", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "balanced", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/anthropic%2Fclaude-3-haiku/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_quality_chunk", "cost_tier": "high", "is_default": false, "latency_tier": "slower", "model_id": "anthropic/claude-sonnet-4.5", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 3.0, "input_usd_per_token": 3e-06, "last_verified_at": "2026-07-27", "model_id": "anthropic/claude-sonnet-4.5", "output_usd_per_1m_tokens": 15.0, "output_usd_per_token": 1.5e-05, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "anthropic/claude-sonnet-4.5", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "high", "recommended_modes": ["chunk"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/anthropic%2Fclaude-sonnet-4.5/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_frontier_robust_chunk", "cost_tier": "very_high", "is_default": false, "latency_tier": "slow", "model_id": "anthropic/claude-fable-5", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "high", "reasoning_effort_supported": ["low", "medium", "high", "xhigh", "max"], "reasoning_effort_user_configurable": true, "temperature": false, "temperature_default": null, "temperature_max": null, "temperature_min": null}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 10.0, "input_usd_per_token": 1e-05, "last_verified_at": "2026-07-27", "model_id": "anthropic/claude-fable-5", "output_usd_per_1m_tokens": 50.0, "output_usd_per_token": 5e-05, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "anthropic/claude-fable-5", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "frontier_unverified_for_crm", "recommended_modes": ["chunk"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "high", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/anthropic%2Fclaude-fable-5/chunk/real_estate_buyer_profile@4/temp=default,max_out=4096,reasoning=high,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_low_cost_fast", "cost_tier": "low", "is_default": false, "latency_tier": "fast", "model_id": "deepseek/deepseek-chat", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.2002, "input_usd_per_token": 2.002e-07, "last_verified_at": "2026-07-27", "model_id": "deepseek/deepseek-chat", "output_usd_per_1m_tokens": 0.8001, "output_usd_per_token": 8.001e-07, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "deepseek/deepseek-chat", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "experimental", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/deepseek%2Fdeepseek-chat/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_china_budget_fast", "cost_tier": "very_low", "is_default": false, "latency_tier": "fast", "model_id": "qwen/qwen3.5-flash-02-23", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "none", "reasoning_effort_supported": ["none", "minimal", "low", "medium", "high"], "reasoning_effort_user_configurable": true, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.065, "input_usd_per_token": 6.5e-08, "last_verified_at": "2026-07-27", "model_id": "qwen/qwen3.5-flash-02-23", "output_usd_per_1m_tokens": 0.26, "output_usd_per_token": 2.6e-07, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "qwen/qwen3.5-flash-02-23", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "experimental_budget", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "none", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/qwen%2Fqwen3.5-flash-02-23/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=none,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_china_quality_chunk", "cost_tier": "low", "is_default": false, "latency_tier": "medium", "model_id": "qwen/qwen3-235b-a22b-2507", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.09, "input_usd_per_token": 9e-08, "last_verified_at": "2026-07-27", "model_id": "qwen/qwen3-235b-a22b-2507", "output_usd_per_1m_tokens": 0.55, "output_usd_per_token": 5.5e-07, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "qwen/qwen3-235b-a22b-2507", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "experimental_high", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/qwen%2Fqwen3-235b-a22b-2507/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_china_budget_fast", "cost_tier": "very_low", "is_default": false, "latency_tier": "fast", "model_id": "z-ai/glm-4.7-flash", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "none", "reasoning_effort_supported": ["none", "minimal", "low", "medium", "high"], "reasoning_effort_user_configurable": true, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.06, "input_usd_per_token": 6e-08, "last_verified_at": "2026-07-27", "model_id": "z-ai/glm-4.7-flash", "output_usd_per_1m_tokens": 0.4, "output_usd_per_token": 4e-07, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "z-ai/glm-4.7-flash", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "experimental_budget", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "none", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/z-ai%2Fglm-4.7-flash/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=none,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_china_quality_chunk", "cost_tier": "medium", "is_default": false, "latency_tier": "medium", "model_id": "z-ai/glm-5.2", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "high", "reasoning_effort_supported": ["high", "xhigh"], "reasoning_effort_user_configurable": true, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.7574, "input_usd_per_token": 7.574e-07, "last_verified_at": "2026-07-27", "model_id": "z-ai/glm-5.2", "output_usd_per_1m_tokens": 2.3804, "output_usd_per_token": 2.3804e-06, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "z-ai/glm-5.2", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "experimental_high", "recommended_modes": ["chunk"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "high", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/z-ai%2Fglm-5.2/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=high,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_frontier_cost_sensitive", "cost_tier": "medium", "is_default": false, "latency_tier": "medium_unmeasured", "model_id": "openai/gpt-5.6-luna", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "medium", "reasoning_effort_supported": ["none", "low", "medium", "high", "xhigh", "max"], "reasoning_effort_user_configurable": true, "temperature": false, "temperature_default": null, "temperature_max": null, "temperature_min": null}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.5, "input_usd_per_token": 5e-07, "last_verified_at": "2026-07-27", "model_id": "openai/gpt-5.6-luna", "output_usd_per_1m_tokens": 3.0, "output_usd_per_token": 3e-06, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "openai/gpt-5.6-luna", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "frontier_unverified_for_crm", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "medium", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/openai%2Fgpt-5.6-luna/chunk/real_estate_buyer_profile@4/temp=default,max_out=4096,reasoning=medium,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_frontier_balanced", "cost_tier": "high", "is_default": false, "latency_tier": "medium_unmeasured", "model_id": "openai/gpt-5.6-terra", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "medium", "reasoning_effort_supported": ["none", "low", "medium", "high", "xhigh", "max"], "reasoning_effort_user_configurable": true, "temperature": false, "temperature_default": null, "temperature_max": null, "temperature_min": null}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 1.25, "input_usd_per_token": 1.25e-06, "last_verified_at": "2026-07-27", "model_id": "openai/gpt-5.6-terra", "output_usd_per_1m_tokens": 7.5, "output_usd_per_token": 7.5e-06, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "openai/gpt-5.6-terra", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "frontier_unverified_for_crm", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "medium", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/openai%2Fgpt-5.6-terra/chunk/real_estate_buyer_profile@4/temp=default,max_out=4096,reasoning=medium,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_frontier_robust_chunk", "cost_tier": "very_high", "is_default": false, "latency_tier": "slow_unmeasured", "model_id": "openai/gpt-5.6-sol", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "medium", "reasoning_effort_supported": ["none", "low", "medium", "high", "xhigh", "max"], "reasoning_effort_user_configurable": true, "temperature": false, "temperature_default": null, "temperature_max": null, "temperature_min": null}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 5.0, "input_usd_per_token": 5e-06, "last_verified_at": "2026-07-27", "model_id": "openai/gpt-5.6-sol", "output_usd_per_1m_tokens": 30.0, "output_usd_per_token": 3e-05, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "openai/gpt-5.6-sol", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "frontier_unverified_for_crm", "recommended_modes": ["chunk"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "medium", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/openai%2Fgpt-5.6-sol/chunk/real_estate_buyer_profile@4/temp=default,max_out=4096,reasoning=medium,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_low_cost_reasoning", "cost_tier": "very_low", "is_default": false, "latency_tier": "fast_unmeasured", "model_id": "deepseek/deepseek-v4-flash", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "high", "reasoning_effort_supported": ["high", "xhigh"], "reasoning_effort_user_configurable": true, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.09, "input_usd_per_token": 9e-08, "last_verified_at": "2026-08-09", "model_id": "deepseek/deepseek-v4-flash", "output_usd_per_1m_tokens": 0.18, "output_usd_per_token": 1.8e-07, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "deepseek/deepseek-v4-flash", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "experimental_high", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "high", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/deepseek%2Fdeepseek-v4-flash/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=high,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_quality_reasoning", "cost_tier": "low", "is_default": false, "latency_tier": "medium_unmeasured", "model_id": "deepseek/deepseek-v4-pro", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "high", "reasoning_effort_supported": ["high", "xhigh"], "reasoning_effort_user_configurable": true, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.435, "input_usd_per_token": 4.35e-07, "last_verified_at": "2026-08-09", "model_id": "deepseek/deepseek-v4-pro", "output_usd_per_1m_tokens": 0.87, "output_usd_per_token": 8.7e-07, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "deepseek/deepseek-v4-pro", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "experimental_high", "recommended_modes": ["chunk"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "high", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/deepseek%2Fdeepseek-v4-pro/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=high,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}], "models": ["openai/gpt-4o-mini", "google/gemini-2.5-flash-lite", "google/gemini-2.5-flash", "anthropic/claude-3-haiku", "anthropic/claude-sonnet-4.5", "anthropic/claude-fable-5", "deepseek/deepseek-chat", "qwen/qwen3.5-flash-02-23", "qwen/qwen3-235b-a22b-2507", "z-ai/glm-4.7-flash", "z-ai/glm-5.2", "openai/gpt-5.6-luna", "openai/gpt-5.6-terra", "openai/gpt-5.6-sol", "deepseek/deepseek-v4-flash", "deepseek/deepseek-v4-pro"], "provider": "openrouter"}], "selection_profiles": [{"framework": "current_house", "mode": "chunk", "model_id": "fixture-current-house", "profile": "fixture_smoke", "provider": "fixture", "purpose": "CI-safe deterministic smoke test.", "temperature": 0}, {"framework": "current_house", "mode": "turn", "model_id": "gpt-4o-mini", "profile": "turn_low_cost", "provider": "openai", "purpose": "Low-cost recent-window CRM memory refresh candidate.", "temperature": 0}, {"framework": "current_house", "mode": "chunk", "model_id": "gpt-5-mini", "profile": "chunk_balanced", "provider": "openai", "purpose": "Balanced full-conversation extraction candidate.", "reasoning_effort": "low", "temperature": null}, {"framework": "current_house", "mode": "chunk", "model_id": "openai/gpt-4o-mini", "profile": "openrouter_balanced", "provider": "openrouter", "purpose": "OpenRouter baseline for provider-routing comparison.", "temperature": 0}, {"framework": "current_house", "mode": "chunk", "model_id": "google/gemini-2.5-flash", "profile": "openrouter_gemini_flash", "provider": "openrouter", "purpose": "OpenRouter Gemini candidate for direct-vs-routed provider comparison.", "temperature": 0}, {"framework": "current_house", "mode": "turn", "model_id": "google/gemini-2.5-flash-lite", "profile": "openrouter_gemini_flash_lite", "provider": "openrouter", "purpose": "OpenRouter Google budget candidate for low-latency memory refresh.", "temperature": 0}, {"framework": "current_house", "mode": "chunk", "model_id": "anthropic/claude-3-haiku", "profile": "openrouter_claude_haiku", "provider": "openrouter", "purpose": "OpenRouter Anthropic candidate for balanced extraction comparison.", "temperature": 0}, {"framework": "current_house", "mode": "chunk", "model_id": "anthropic/claude-sonnet-4.5", "profile": "openrouter_claude_sonnet", "provider": "openrouter", "purpose": "OpenRouter Anthropic quality candidate for full-conversation extraction.", "temperature": 0}, {"framework": "current_house", "mode": "chunk", "model_id": "anthropic/claude-fable-5", "profile": "openrouter_claude_fable_5", "provider": "openrouter", "purpose": "High-cost robust candidate; CRM quality and latency are not measured yet.", "reasoning_effort": "high", "temperature": null}, {"framework": "current_house", "mode": "turn", "model_id": "deepseek/deepseek-chat", "profile": "openrouter_low_cost_turn", "provider": "openrouter", "purpose": "Low-cost OpenRouter candidate for recent-window memory refresh.", "temperature": 0}, {"framework": "current_house", "mode": "turn", "model_id": "qwen/qwen3.5-flash-02-23", "profile": "openrouter_qwen_budget", "provider": "openrouter", "purpose": "Low-cost Qwen candidate routed through OpenRouter.", "temperature": 0}, {"framework": "current_house", "mode": "chunk", "model_id": "qwen/qwen3-235b-a22b-2507", "profile": "openrouter_qwen_quality", "provider": "openrouter", "purpose": "Larger Qwen candidate routed through OpenRouter for quality comparison.", "temperature": 0}, {"framework": "current_house", "mode": "turn", "model_id": "z-ai/glm-4.7-flash", "profile": "openrouter_zai_budget", "provider": "openrouter", "purpose": "Low-cost Z.ai GLM candidate routed through OpenRouter.", "temperature": 0}, {"framework": "current_house", "mode": "chunk", "model_id": "z-ai/glm-5.2", "profile": "openrouter_zai_quality", "provider": "openrouter", "purpose": "Higher-capability Z.ai GLM candidate routed through OpenRouter.", "reasoning_effort": "high", "temperature": 0}, {"framework": "current_house", "mode": "turn", "model_id": "openai/gpt-5.6-luna", "profile": "openrouter_gpt56_luna_turn", "provider": "openrouter", "purpose": "Cost-sensitive GPT-5.6 candidate for chatbot CRM refresh.", "reasoning_effort": "medium", "temperature": null}, {"framework": "current_house", "mode": "chunk", "model_id": "openai/gpt-5.6-terra", "profile": "openrouter_gpt56_terra_chunk", "provider": "openrouter", "purpose": "Balanced GPT-5.6 candidate for full-conversation extraction.", "reasoning_effort": "medium", "temperature": null}, {"framework": "current_house", "mode": "chunk", "model_id": "openai/gpt-5.6-sol", "profile": "openrouter_gpt56_sol_chunk", "provider": "openrouter", "purpose": "Robust GPT-5.6 candidate; CRM quality and latency are not measured yet.", "reasoning_effort": "medium", "temperature": null}, {"framework": "current_house", "mode": "turn", "model_id": "deepseek/deepseek-v4-flash", "profile": "openrouter_deepseek_v4_flash_turn", "provider": "openrouter", "purpose": "Low-cost DeepSeek V4 candidate for frequent CRM memory refresh; CRM quality and latency are not measured yet.", "reasoning_effort": "high", "temperature": 0}, {"framework": "current_house", "mode": "chunk", "model_id": "deepseek/deepseek-v4-pro", "profile": "openrouter_deepseek_v4_pro_chunk", "provider": "openrouter", "purpose": "DeepSeek V4 quality candidate for full-conversation extraction; CRM quality and latency are not measured yet.", "reasoning_effort": "high", "temperature": 0}], "usage": "Controlled inventory of registered candidates. Submit only provider/model pairs listed in execution_policy.enabled_provider_model_map."}, "provider_model_map": {"gemini": ["gemini-2.5-flash", "gemini-2.5-pro"], "openai": ["gpt-4o-mini", "gpt-4o", "gpt-5-mini"], "openrouter": ["openai/gpt-4o-mini", "google/gemini-2.5-flash-lite", "google/gemini-2.5-flash", "anthropic/claude-3-haiku", "anthropic/claude-sonnet-4.5", "anthropic/claude-fable-5", "deepseek/deepseek-chat", "qwen/qwen3.5-flash-02-23", "qwen/qwen3-235b-a22b-2507", "z-ai/glm-4.7-flash", "z-ai/glm-5.2", "openai/gpt-5.6-luna", "openai/gpt-5.6-terra", "openai/gpt-5.6-sol"]}, "provider_options": ["gemini", "openai", "openrouter"], "providers": [{"default_model": "gemini-2.5-flash", "model_details": [{"candidate_class": "low_cost_fast", "cost_tier": "low", "is_default": true, "latency_tier": "fast", "model_id": "gemini-2.5-flash", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "thinking_budget_0", "reasoning_effort_supported": ["thinking_budget_0", "thinking_budget_1024", "thinking_budget_8192", "thinking_budget_24576", "thinking_budget_dynamic"], "reasoning_effort_user_configurable": true, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": false, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "official_catalog_snapshot", "input_usd_per_1m_tokens": 0.3, "input_usd_per_token": 3e-07, "last_verified_at": "2026-07-26", "model_id": "gemini-2.5-flash", "output_usd_per_1m_tokens": 2.5, "output_usd_per_token": 2.5e-06, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_official_provider_page", "provider": "gemini", "source": "official_provider_pricing_page", "source_conversion": "none", "source_description": "Price transcribed from the official Google Gemini model/pricing page. It is a dated catalog snapshot and must be refreshed before a paid pilot because provider prices can change.", "source_model_id": "gemini-2.5-flash", "source_native_unit": "usd_per_1m_tokens", "source_url": "https://ai.google.dev/gemini-api/docs/pricing", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "balanced", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "thinking_budget_0", "setup_id": "current_house@current_house_chunk_v3_bounded_input/gemini/gemini-2.5-flash/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=thinking_budget_0,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "quality_sensitive_chunk", "cost_tier": "high", "is_default": false, "latency_tier": "slower", "model_id": "gemini-2.5-pro", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "thinking_budget_128", "reasoning_effort_supported": ["thinking_budget_128", "thinking_budget_2048", "thinking_budget_8192", "thinking_budget_32768", "thinking_budget_dynamic"], "reasoning_effort_user_configurable": true, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": false, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "official_catalog_snapshot", "input_usd_per_1m_tokens": 1.25, "input_usd_per_token": 1.25e-06, "last_verified_at": "2026-07-26", "model_id": "gemini-2.5-pro", "output_usd_per_1m_tokens": 10.0, "output_usd_per_token": 1e-05, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_official_provider_page", "provider": "gemini", "source": "official_provider_pricing_page", "source_conversion": "none", "source_description": "Price transcribed from the official Google Gemini model/pricing page. It is a dated catalog snapshot and must be refreshed before a paid pilot because provider prices can change.", "source_model_id": "gemini-2.5-pro", "source_native_unit": "usd_per_1m_tokens", "source_url": "https://ai.google.dev/gemini-api/docs/pricing", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "high", "recommended_modes": ["chunk"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "thinking_budget_128", "setup_id": "current_house@current_house_chunk_v3_bounded_input/gemini/gemini-2.5-pro/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=thinking_budget_128,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}], "models": ["gemini-2.5-flash", "gemini-2.5-pro"], "provider": "gemini"}, {"default_model": "gpt-4o-mini", "model_details": [{"candidate_class": "low_cost_fast", "cost_tier": "low", "is_default": true, "latency_tier": "fast", "model_id": "gpt-4o-mini", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": false, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "official_catalog_snapshot", "input_usd_per_1m_tokens": 0.15, "input_usd_per_token": 1.5e-07, "last_verified_at": "2026-07-26", "model_id": "gpt-4o-mini", "output_usd_per_1m_tokens": 0.6, "output_usd_per_token": 6e-07, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_official_provider_page", "provider": "openai", "source": "official_provider_pricing_page", "source_conversion": "none", "source_description": "Price transcribed from the official OpenAI model/pricing page. It is a dated catalog snapshot and must be refreshed before a paid pilot because provider prices can change.", "source_model_id": "gpt-4o-mini", "source_native_unit": "usd_per_1m_tokens", "source_url": "https://developers.openai.com/api/docs/models/gpt-4o-mini", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "balanced", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openai/gpt-4o-mini/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "quality_sensitive_chunk", "cost_tier": "high", "is_default": false, "latency_tier": "medium", "model_id": "gpt-4o", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": false, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "official_catalog_snapshot", "input_usd_per_1m_tokens": 2.5, "input_usd_per_token": 2.5e-06, "last_verified_at": "2026-07-26", "model_id": "gpt-4o", "output_usd_per_1m_tokens": 10.0, "output_usd_per_token": 1e-05, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_official_provider_page", "provider": "openai", "source": "official_provider_pricing_page", "source_conversion": "none", "source_description": "Price transcribed from the official OpenAI model/pricing page. It is a dated catalog snapshot and must be refreshed before a paid pilot because provider prices can change.", "source_model_id": "gpt-4o", "source_native_unit": "usd_per_1m_tokens", "source_url": "https://developers.openai.com/api/docs/models/gpt-4o", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "high", "recommended_modes": ["chunk"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openai/gpt-4o/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "balanced_chunk", "cost_tier": "medium", "is_default": false, "latency_tier": "medium", "model_id": "gpt-5-mini", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "low", "reasoning_effort_supported": ["minimal", "low", "medium", "high"], "reasoning_effort_user_configurable": true, "temperature": false, "temperature_default": null, "temperature_max": null, "temperature_min": null}, "pricing": {"approximate": false, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "official_catalog_snapshot", "input_usd_per_1m_tokens": 0.25, "input_usd_per_token": 2.5e-07, "last_verified_at": "2026-07-26", "model_id": "gpt-5-mini", "output_usd_per_1m_tokens": 2.0, "output_usd_per_token": 2e-06, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_official_provider_page", "provider": "openai", "source": "official_provider_pricing_page", "source_conversion": "none", "source_description": "Price transcribed from the official OpenAI model/pricing page. It is a dated catalog snapshot and must be refreshed before a paid pilot because provider prices can change.", "source_model_id": "gpt-5-mini", "source_native_unit": "usd_per_1m_tokens", "source_url": "https://developers.openai.com/api/docs/models/gpt-5-mini", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "balanced_high", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "low", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openai/gpt-5-mini/chunk/real_estate_buyer_profile@4/temp=default,max_out=4096,reasoning=low,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}], "models": ["gpt-4o-mini", "gpt-4o", "gpt-5-mini"], "provider": "openai"}, {"default_model": "openai/gpt-4o-mini", "model_details": [{"candidate_class": "openrouter_low_cost_fast", "cost_tier": "low", "is_default": true, "latency_tier": "fast", "model_id": "openai/gpt-4o-mini", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.15, "input_usd_per_token": 1.5e-07, "last_verified_at": "2026-07-27", "model_id": "openai/gpt-4o-mini", "output_usd_per_1m_tokens": 0.6, "output_usd_per_token": 6e-07, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "openai/gpt-4o-mini", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "balanced", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/openai%2Fgpt-4o-mini/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_budget_fast", "cost_tier": "very_low", "is_default": false, "latency_tier": "fast", "model_id": "google/gemini-2.5-flash-lite", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.1, "input_usd_per_token": 1e-07, "last_verified_at": "2026-07-27", "model_id": "google/gemini-2.5-flash-lite", "output_usd_per_1m_tokens": 0.4, "output_usd_per_token": 4e-07, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "google/gemini-2.5-flash-lite", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "budget_balanced", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/google%2Fgemini-2.5-flash-lite/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_low_cost_fast", "cost_tier": "low", "is_default": false, "latency_tier": "fast", "model_id": "google/gemini-2.5-flash", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.3, "input_usd_per_token": 3e-07, "last_verified_at": "2026-07-27", "model_id": "google/gemini-2.5-flash", "output_usd_per_1m_tokens": 2.5, "output_usd_per_token": 2.5e-06, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "google/gemini-2.5-flash", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "balanced", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/google%2Fgemini-2.5-flash/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_balanced_chunk", "cost_tier": "medium", "is_default": false, "latency_tier": "medium", "model_id": "anthropic/claude-3-haiku", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.25, "input_usd_per_token": 2.5e-07, "last_verified_at": "2026-07-27", "model_id": "anthropic/claude-3-haiku", "output_usd_per_1m_tokens": 1.25, "output_usd_per_token": 1.25e-06, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "anthropic/claude-3-haiku", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "balanced", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/anthropic%2Fclaude-3-haiku/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_quality_chunk", "cost_tier": "high", "is_default": false, "latency_tier": "slower", "model_id": "anthropic/claude-sonnet-4.5", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 3.0, "input_usd_per_token": 3e-06, "last_verified_at": "2026-07-27", "model_id": "anthropic/claude-sonnet-4.5", "output_usd_per_1m_tokens": 15.0, "output_usd_per_token": 1.5e-05, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "anthropic/claude-sonnet-4.5", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "high", "recommended_modes": ["chunk"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/anthropic%2Fclaude-sonnet-4.5/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_frontier_robust_chunk", "cost_tier": "very_high", "is_default": false, "latency_tier": "slow", "model_id": "anthropic/claude-fable-5", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "high", "reasoning_effort_supported": ["low", "medium", "high", "xhigh", "max"], "reasoning_effort_user_configurable": true, "temperature": false, "temperature_default": null, "temperature_max": null, "temperature_min": null}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 10.0, "input_usd_per_token": 1e-05, "last_verified_at": "2026-07-27", "model_id": "anthropic/claude-fable-5", "output_usd_per_1m_tokens": 50.0, "output_usd_per_token": 5e-05, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "anthropic/claude-fable-5", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "frontier_unverified_for_crm", "recommended_modes": ["chunk"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "high", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/anthropic%2Fclaude-fable-5/chunk/real_estate_buyer_profile@4/temp=default,max_out=4096,reasoning=high,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_low_cost_fast", "cost_tier": "low", "is_default": false, "latency_tier": "fast", "model_id": "deepseek/deepseek-chat", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.2002, "input_usd_per_token": 2.002e-07, "last_verified_at": "2026-07-27", "model_id": "deepseek/deepseek-chat", "output_usd_per_1m_tokens": 0.8001, "output_usd_per_token": 8.001e-07, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "deepseek/deepseek-chat", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "experimental", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/deepseek%2Fdeepseek-chat/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_china_budget_fast", "cost_tier": "very_low", "is_default": false, "latency_tier": "fast", "model_id": "qwen/qwen3.5-flash-02-23", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "none", "reasoning_effort_supported": ["none", "minimal", "low", "medium", "high"], "reasoning_effort_user_configurable": true, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.065, "input_usd_per_token": 6.5e-08, "last_verified_at": "2026-07-27", "model_id": "qwen/qwen3.5-flash-02-23", "output_usd_per_1m_tokens": 0.26, "output_usd_per_token": 2.6e-07, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "qwen/qwen3.5-flash-02-23", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "experimental_budget", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "none", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/qwen%2Fqwen3.5-flash-02-23/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=none,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_china_quality_chunk", "cost_tier": "low", "is_default": false, "latency_tier": "medium", "model_id": "qwen/qwen3-235b-a22b-2507", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": false, "reasoning_effort_default": null, "reasoning_effort_supported": [], "reasoning_effort_user_configurable": false, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.09, "input_usd_per_token": 9e-08, "last_verified_at": "2026-07-27", "model_id": "qwen/qwen3-235b-a22b-2507", "output_usd_per_1m_tokens": 0.55, "output_usd_per_token": 5.5e-07, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "qwen/qwen3-235b-a22b-2507", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "experimental_high", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": null, "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/qwen%2Fqwen3-235b-a22b-2507/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=default,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_china_budget_fast", "cost_tier": "very_low", "is_default": false, "latency_tier": "fast", "model_id": "z-ai/glm-4.7-flash", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "none", "reasoning_effort_supported": ["none", "minimal", "low", "medium", "high"], "reasoning_effort_user_configurable": true, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.06, "input_usd_per_token": 6e-08, "last_verified_at": "2026-07-27", "model_id": "z-ai/glm-4.7-flash", "output_usd_per_1m_tokens": 0.4, "output_usd_per_token": 4e-07, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "z-ai/glm-4.7-flash", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "experimental_budget", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "none", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/z-ai%2Fglm-4.7-flash/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=none,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_china_quality_chunk", "cost_tier": "medium", "is_default": false, "latency_tier": "medium", "model_id": "z-ai/glm-5.2", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "high", "reasoning_effort_supported": ["high", "xhigh"], "reasoning_effort_user_configurable": true, "temperature": true, "temperature_default": 0.0, "temperature_max": 2.0, "temperature_min": 0.0}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.7574, "input_usd_per_token": 7.574e-07, "last_verified_at": "2026-07-27", "model_id": "z-ai/glm-5.2", "output_usd_per_1m_tokens": 2.3804, "output_usd_per_token": 2.3804e-06, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "z-ai/glm-5.2", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "experimental_high", "recommended_modes": ["chunk"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "high", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/z-ai%2Fglm-5.2/chunk/real_estate_buyer_profile@4/temp=0,max_out=4096,reasoning=high,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_frontier_cost_sensitive", "cost_tier": "medium", "is_default": false, "latency_tier": "medium_unmeasured", "model_id": "openai/gpt-5.6-luna", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "medium", "reasoning_effort_supported": ["none", "low", "medium", "high", "xhigh", "max"], "reasoning_effort_user_configurable": true, "temperature": false, "temperature_default": null, "temperature_max": null, "temperature_min": null}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 0.5, "input_usd_per_token": 5e-07, "last_verified_at": "2026-07-27", "model_id": "openai/gpt-5.6-luna", "output_usd_per_1m_tokens": 3.0, "output_usd_per_token": 3e-06, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "openai/gpt-5.6-luna", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "frontier_unverified_for_crm", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "medium", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/openai%2Fgpt-5.6-luna/chunk/real_estate_buyer_profile@4/temp=default,max_out=4096,reasoning=medium,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_frontier_balanced", "cost_tier": "high", "is_default": false, "latency_tier": "medium_unmeasured", "model_id": "openai/gpt-5.6-terra", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "medium", "reasoning_effort_supported": ["none", "low", "medium", "high", "xhigh", "max"], "reasoning_effort_user_configurable": true, "temperature": false, "temperature_default": null, "temperature_max": null, "temperature_min": null}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 1.25, "input_usd_per_token": 1.25e-06, "last_verified_at": "2026-07-27", "model_id": "openai/gpt-5.6-terra", "output_usd_per_1m_tokens": 7.5, "output_usd_per_token": 7.5e-06, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "openai/gpt-5.6-terra", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "frontier_unverified_for_crm", "recommended_modes": ["chunk", "turn"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "medium", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/openai%2Fgpt-5.6-terra/chunk/real_estate_buyer_profile@4/temp=default,max_out=4096,reasoning=medium,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}, {"candidate_class": "openrouter_frontier_robust_chunk", "cost_tier": "very_high", "is_default": false, "latency_tier": "slow_unmeasured", "model_id": "openai/gpt-5.6-sol", "parameter_support": {"max_output_tokens": true, "max_output_tokens_default": 4096, "max_output_tokens_max": 32768, "max_output_tokens_min": 1, "reasoning_effort": true, "reasoning_effort_default": "medium", "reasoning_effort_supported": ["none", "low", "medium", "high", "xhigh", "max"], "reasoning_effort_user_configurable": true, "temperature": false, "temperature_default": null, "temperature_max": null, "temperature_min": null}, "pricing": {"approximate": true, "billing_policy": "This is not provider billing truth. Actual spend requires future billing_actual reconciliation against provider invoices or account usage exports.", "calculation_formula": "cost_usd = input_tokens * input_usd_per_1m_tokens / 1_000_000 + output_tokens * output_usd_per_1m_tokens / 1_000_000", "confidence": "catalog_snapshot", "input_usd_per_1m_tokens": 5.0, "input_usd_per_token": 5e-06, "last_verified_at": "2026-07-27", "model_id": "openai/gpt-5.6-sol", "output_usd_per_1m_tokens": 30.0, "output_usd_per_token": 3e-05, "price_unit_description": "Both input and output prices are stored as USD per 1 million tokens. Runtime cost multiplies observed or estimated token counts by these two rates.", "pricing_status": "verified_openrouter_models_api", "provider": "openrouter", "source": "openrouter_models_api", "source_conversion": "OpenRouter API pricing.prompt and pricing.completion are USD per token; each value is multiplied by 1,000,000 for this table.", "source_description": "Price copied into this repository from the public OpenRouter models API snapshot. It is suitable for controlled estimates, but must still be refreshed before paid pilots because routed model availability and prices can change.", "source_model_id": "openai/gpt-5.6-sol", "source_native_unit": "usd_per_token", "source_url": "https://openrouter.ai/api/v1/models", "token_count_policy": "Estimate-only paths use local token assumptions/counts. Live extraction uses provider-returned usage tokens when the API returns them; otherwise the value remains an explicit estimate.", "unit": "usd_per_1m_tokens", "verification_required_before_paid_run": true}, "quality_tier": "frontier_unverified_for_crm", "recommended_modes": ["chunk"], "setup_preview": {"chunk_size_messages": null, "data_dictionary_version": "real_estate_buyer_profile@4", "error_taxonomy_version": "model_error_taxonomy_v1", "framework_version": "current_house_chunk_v3_bounded_input", "latency_schema_version": "latency_breakdown_v2", "methodology_version": "crm_extraction_methodology_v2", "output_contract_id": "buyer_profile_runtime_result_v1", "output_contract_version": "1", "prompt_version": "current_house_chunk_v3_bounded_input", "reasoning_effort": "medium", "setup_id": "current_house@current_house_chunk_v3_bounded_input/openrouter/openai%2Fgpt-5.6-sol/chunk/real_estate_buyer_profile@4/temp=default,max_out=4096,reasoning=medium,chunk_messages=default,turn_window=default", "setup_id_version": "setup_id_v3", "turn_window_messages": null}}], "models": ["openai/gpt-4o-mini", "google/gemini-2.5-flash-lite", "google/gemini-2.5-flash", "anthropic/claude-3-haiku", "anthropic/claude-sonnet-4.5", "anthropic/claude-fable-5", "deepseek/deepseek-chat", "qwen/qwen3.5-flash-02-23", "qwen/qwen3-235b-a22b-2507", "z-ai/glm-4.7-flash", "z-ai/glm-5.2", "openai/gpt-5.6-luna", "openai/gpt-5.6-terra", "openai/gpt-5.6-sol"], "provider": "openrouter"}], "public_origin": "https://crm-extractor-demo.abitai.com.br", "request_concurrency": {"caller_ordering_requirement": "one_in_flight_update_per_conversation", "cross_process_serialization": true, "different_conversations_parallel": true, "http_server": "thread_per_request", "lock_backend": "postgres_advisory", "same_conversation_serialized_in_process": true}, "selection_profiles": [{"framework": "current_house", "mode": "turn", "model_id": "gpt-4o-mini", "profile": "turn_low_cost", "provider": "openai", "purpose": "Low-cost recent-window CRM memory refresh candidate.", "temperature": 0}, {"framework": "current_house", "mode": "chunk", "model_id": "gpt-5-mini", "profile": "chunk_balanced", "provider": "openai", "purpose": "Balanced full-conversation extraction candidate.", "reasoning_effort": "low", "temperature": null}, {"framework": "current_house", "mode": "chunk", "model_id": "openai/gpt-4o-mini", "profile": "openrouter_balanced", "provider": "openrouter", "purpose": "OpenRouter baseline for provider-routing comparison.", "temperature": 0}, {"framework": "current_house", "mode": "chunk", "model_id": "google/gemini-2.5-flash", "profile": "openrouter_gemini_flash", "provider": "openrouter", "purpose": "OpenRouter Gemini candidate for direct-vs-routed provider comparison.", "temperature": 0}, {"framework": "current_house", "mode": "turn", "model_id": "google/gemini-2.5-flash-lite", "profile": "openrouter_gemini_flash_lite", "provider": "openrouter", "purpose": "OpenRouter Google budget candidate for low-latency memory refresh.", "temperature": 0}, {"framework": "current_house", "mode": "chunk", "model_id": "anthropic/claude-3-haiku", "profile": "openrouter_claude_haiku", "provider": "openrouter", "purpose": "OpenRouter Anthropic candidate for balanced extraction comparison.", "temperature": 0}, {"framework": "current_house", "mode": "chunk", "model_id": "anthropic/claude-sonnet-4.5", "profile": "openrouter_claude_sonnet", "provider": "openrouter", "purpose": "OpenRouter Anthropic quality candidate for full-conversation extraction.", "temperature": 0}, {"framework": "current_house", "mode": "chunk", "model_id": "anthropic/claude-fable-5", "profile": "openrouter_claude_fable_5", "provider": "openrouter", "purpose": "High-cost robust candidate; CRM quality and latency are not measured yet.", "reasoning_effort": "high", "temperature": null}, {"framework": "current_house", "mode": "turn", "model_id": "deepseek/deepseek-chat", "profile": "openrouter_low_cost_turn", "provider": "openrouter", "purpose": "Low-cost OpenRouter candidate for recent-window memory refresh.", "temperature": 0}, {"framework": "current_house", "mode": "turn", "model_id": "qwen/qwen3.5-flash-02-23", "profile": "openrouter_qwen_budget", "provider": "openrouter", "purpose": "Low-cost Qwen candidate routed through OpenRouter.", "temperature": 0}, {"framework": "current_house", "mode": "chunk", "model_id": "qwen/qwen3-235b-a22b-2507", "profile": "openrouter_qwen_quality", "provider": "openrouter", "purpose": "Larger Qwen candidate routed through OpenRouter for quality comparison.", "temperature": 0}, {"framework": "current_house", "mode": "turn", "model_id": "z-ai/glm-4.7-flash", "profile": "openrouter_zai_budget", "provider": "openrouter", "purpose": "Low-cost Z.ai GLM candidate routed through OpenRouter.", "temperature": 0}, {"framework": "current_house", "mode": "chunk", "model_id": "z-ai/glm-5.2", "profile": "openrouter_zai_quality", "provider": "openrouter", "purpose": "Higher-capability Z.ai GLM candidate routed through OpenRouter.", "reasoning_effort": "high", "temperature": 0}, {"framework": "current_house", "mode": "turn", "model_id": "openai/gpt-5.6-luna", "profile": "openrouter_gpt56_luna_turn", "provider": "openrouter", "purpose": "Cost-sensitive GPT-5.6 candidate for chatbot CRM refresh.", "reasoning_effort": "medium", "temperature": null}, {"framework": "current_house", "mode": "chunk", "model_id": "openai/gpt-5.6-terra", "profile": "openrouter_gpt56_terra_chunk", "provider": "openrouter", "purpose": "Balanced GPT-5.6 candidate for full-conversation extraction.", "reasoning_effort": "medium", "temperature": null}, {"framework": "current_house", "mode": "chunk", "model_id": "openai/gpt-5.6-sol", "profile": "openrouter_gpt56_sol_chunk", "provider": "openrouter", "purpose": "Robust GPT-5.6 candidate; CRM quality and latency are not measured yet.", "reasoning_effort": "medium", "temperature": null}], "selection_summary": "current_house · openai · gpt-5-mini · chunk", "static_frontend": true, "turn_window_messages": 12}