Architecture and urban planning generate massive unstructured corpora. Municipal zoning codes, environmental impact statements, and building specification books routinely exceed hundreds of thousands of tokens. Traditional token-based inference becomes unpredictable when a single site analysis requires ingesting multiple PDFs, satellite context, and generative iterations. Oxlo.ai addresses this through request-based pricing and a broad model catalog designed for long-context and agentic workloads.
The Long-Context Burden in AEC Documents
Architects and planners work with documents that defeat standard context windows. A single municipal zoning ordinance can span 300 pages. An environmental impact statement often bundles hydrology reports, traffic studies, and acoustic surveys into one submission. When LLM-powered tools process these materials, input length drives cost on token-based platforms. Costs scale linearly or worse as agents iterate over the same corpuses.
Oxlo.ai uses request-based pricing. One flat cost per API request applies regardless of prompt length. For planning workflows that require repeated passes over long documents, this shifts the cost structure significantly. Models such as DeepSeek V4 Flash offer a 1 million token context window, while Kimi K2.6 provides 131K context alongside advanced reasoning and vision capabilities. These specifications allow an entire zoning chapter or site history to sit in context without inflating inference costs per token.
Selecting Models for Spatial Reasoning and Code
Different stages of the architectural pipeline demand different reasoning modalities. Early-stage site analysis requires broad multilingual understanding when sourcing international precedents. Qwen 3 32B handles multilingual reasoning and agent workflows, making it suitable for comparative studies across regulatory regimes.
Detailed coding tasks, such as generating Python scripts for geospatial analysis or automating Grasshopper definitions, benefit from specialized code models. Oxlo.ai offers Qwen 3 Coder 30B, DeepSeek Coder, and Oxlo.ai Coder Fast. For deep reasoning on complex structural calculations or generative algorithms, DeepSeek R1 671B MoE provides the necessary compute depth. GLM 5, a 744B parameter MoE, targets long-horizon agentic tasks where a planner might require dozens of sequential tool calls across a multi-hour session.
Multimodal Site Analysis with Vision Models
Planning is inherently visual. Site plans, aerial photography, and street-level imagery contain information that text cannot capture efficiently. Oxlo.ai hosts vision-capable models including Gemma 3 27B and Kimi VL A3B, enabling direct image input through the chat/completions endpoint.
A planner can pass a satellite image and ask for buildable area estimates, or submit a facade photograph to check compliance with historic preservation guidelines. For object detection at scale, such as counting vehicles in parking studies or identifying tree canopy coverage from drone footage, YOLOv9 and YOLOv11 are available. These feed into the same API ecosystem, allowing teams to chain detection results into LLM summaries without managing separate infrastructure stacks.
Agentic Workflows for Regulatory Compliance
Compliance checking is a rule-bound, multi-step process ideal for agentic LLM architectures. An agent can parse a zoning PDF, cross-reference setbacks against a topographic survey, and flag discrepancies. Oxlo.ai supports function calling, JSON mode, and multi-turn conversations, which are the primitives required for these systems.
Consider a workflow where the LLM must calculate floor area ratio (FAR). The model can emit a function call to a Python evaluator, receive the numeric result, and then reason about whether the proposed design complies. Because Oxlo.ai is fully OpenAI SDK compatible, existing agent frameworks such as LangChain or custom ReAct loops integrate with a single base URL change.
import openai
client = openai.OpenAI(
base_url="https://api.oxlo.ai/v1",
api_key="YOUR_API_KEY"
)
tools = [
{
"type": "function",
"function": {
"name": "calculate_far",
"description": "Calculate floor area ratio",
"parameters": {
"type": "object",
"properties": {
"total_floor_area": {"type": "number"},
"lot_area": {"type": "number"}
},
"required": ["total_floor_area", "lot_area"]
}
}
}
]
response = client.chat.completions.create(
model="minimax-m2-5",
messages=[
{"role": "system", "content": "You are a compliance assistant. Use tools to verify zoning metrics."},
{"role": "user", "content": "The proposal has 45,000 sq ft of floor area on a 10,000 sq ft lot. Check FAR compliance."}
],
tools=tools,
tool_choice="auto"
)
Structured Extraction from Unstructured Plans
Many planning documents exist only as scanned PDFs or legacy CAD exports. Extracting structured data, such as parking requirements, green space ratios, or accessibility standards, traditionally requires manual review. With JSON mode, planners can enforce schema-compliant outputs directly from the API.
The following example ingests a raw zoning excerpt and returns a structured JSON object. Using DeepSeek V3.2, which offers strong coding and reasoning capabilities and is available on the free tier, teams can prototype extractors without upfront commitment.
zoning_excerpt = """
Section 4.2: Residential District R-3. Minimum lot area: 6,000 square feet.
Maximum building height: 35 feet. Front yard setback: 20 feet.
Side yard setback: 5 feet. Rear yard setback: 15 feet.
"""
response = client.chat.completions.create(
model="deepseek-v3-2",
messages=[
{"role": "system", "content": "Extract zoning parameters into JSON with keys: lot_area_sqft, max_height_ft, setbacks."},
{"role": "user", "content": zoning_excerpt}
],
response_format={"type": "json_object"}
)
print(response.choices[0].message.content)
For vector search over large municipal code libraries, Oxlo.ai provides embedding
Top comments (0)