{"asOf":"2026-10-03","doesNotChangeDepotPicks":true,"doesNotChangePriceSort":true,"doesNotRescore":true,"caps":{"needs":6,"freePerNeed":3,"caseStudies":3},"class":{"id":"local-offline","name":"Local and offline agent","definition":"Runs without calling a hosted model API, using local weights, a local index, or an air-gapped serve path.","needs":{"jtbdIds":["air-gapped-model-serve","open-model-inference","self-host-vector","self-host-browser","wasm-edge-small-models","on-device-edge-batch","edge-sqlite-agent-db"],"freeKinds":["open_weights","local_runtime","free_vector","free_sandbox"],"capabilityTags":["oss","edge"],"plain":["No network call on the answer path","Say when the local corpus has no support"]},"failureModeIds":["silent-truncation","context-overflow","schema-drift","non-determinism","stale-retrieval","lost-in-the-middle"],"exampleTasks":["Answer from a local index and say when it has no passage","Refuse to call a hosted model when the task is marked offline"]},"needsConsidered":["air-gapped-model-serve","open-model-inference","self-host-vector","self-host-browser","wasm-edge-small-models","on-device-edge-batch"],"needsOmitted":["edge-sqlite-agent-db"],"jobs":[{"jtbdId":"air-gapped-model-serve","decide":{"available":true,"unavailableReason":null,"providerId":"nvidia-nim","scoreAsOf":"2026-10-19","scoreAgeDays":8,"scoreStale":false,"runnerUpId":"huggingface-inference","cite":"Depot Pick for air-gapped-model-serve: nvidia-nim (asOf 2026-10-19). See GET /api/jtbds/air-gapped-model-serve + GET /api/methodology.","citePath":"/api/jtbds/air-gapped-model-serve"},"quote":{"available":true,"unavailableReason":null,"cheapest":{"providerId":"amazon-bedrock","slug":"amazon-bedrock","name":"Amazon Bedrock","skuId":"amazon-bedrock-gemma-3-4b-in","sku":"Gemma 3 4B","item":"Gemma 3 4B","plan":"Gemma 3 4B — Standard on-demand","isFloorPrice":true,"floorWarning":"Provider-wide floor SKU; may not be the flagship model scored for this JTBD.","skuKind":"chat_completion_input","unit":"usd_per_million_input_tokens","amountUsd":0.04,"comparison":"min sourced input SKU among candidates; not quality-adjusted","usdPerMillionInputTokens":0.04,"sourceUrl":"https://aws.amazon.com/bedrock/pricing/","asOf":"2026-10-03"},"recommendedWorkloadQuote":null,"representativeQuote":null,"estimatedTaskCost":null,"reason":null,"priceWinnerNote":"Only 1 candidate has a sourced input $/1M; nothing was compared, so pickIsPriceWinner is null."},"pickIsNotPriceWinner":false,"freeResources":[],"freeMatch":"none","paidPick":{"available":true,"unavailableReason":null,"providerId":"nvidia-nim","scoreAsOf":"2026-10-19","scoreAgeDays":8,"scoreStale":false,"runnerUpId":"huggingface-inference","cite":"Depot Pick for air-gapped-model-serve: nvidia-nim (asOf 2026-10-19). See GET /api/jtbds/air-gapped-model-serve + GET /api/methodology.","citePath":"/api/jtbds/air-gapped-model-serve"},"recommendation":{"mode":"free_only","use":[],"gap":"no_free_resource_for_job","creditsNotFree":[],"doesNotPromotePaidSku":true}},{"jtbdId":"open-model-inference","decide":{"available":true,"unavailableReason":null,"providerId":"fireworks","scoreAsOf":"2026-09-14","scoreAgeDays":43,"scoreStale":true,"runnerUpId":"together","cite":"Depot Pick for open-model-inference: fireworks (asOf 2026-09-14). See GET /api/jtbds/open-model-inference + GET /api/methodology.","citePath":"/api/jtbds/open-model-inference"},"quote":{"available":true,"unavailableReason":null,"cheapest":{"providerId":"chutes","slug":"chutes","name":"Chutes","skuId":"chutes-qwen3-8-27b-qwen-qwen3-8-27b-tee-in","sku":"Qwen3.8-27B (Qwen/Qwen3.8-27B-TEE)","item":"Qwen3.8-27B (Qwen/Qwen3.8-27B-TEE)","plan":"Qwen3.8-27B (Qwen/Qwen3.8-27B-TEE) — Public TEE inference, USD per 1M tokens","isFloorPrice":true,"floorWarning":"Provider-wide floor SKU; may not be the flagship model scored for this JTBD.","skuKind":"chat_completion_input","unit":"usd_per_million_input_tokens","amountUsd":0.039,"comparison":"min sourced input SKU among candidates; not quality-adjusted","usdPerMillionInputTokens":0.039,"sourceUrl":"https://chutes.ai/pricing","asOf":"2026-10-27"},"recommendedWorkloadQuote":{"providerId":"fireworks","providerName":"Fireworks AI","skuId":"fireworks-embed-to-150m","item":"Embeddings up to 150M params","plan":"Embeddings up to 150M params — parameter-count bucket, not a named chat model","unit":"usd_per_million_input_tokens","amountUsd":0.008,"outputSkuId":null,"outputItem":null,"outputAmountUsd":null,"outputUnit":null,"sourceUrl":"https://fireworks.ai/pricing","asOf":"2026-10-03","pricingLastVerifiedAt":"2026-10-03","isFlagshipForJob":false,"differsFromFloorCheapest":false,"representativeQuote":{"skuId":"fireworks-embed-to-150m","item":"Embeddings up to 150M params","plan":"Embeddings up to 150M params — parameter-count bucket, not a named chat model","amountUsd":0.008,"inputOrUnitUsd":0.008,"unit":"usd_per_million_input_tokens","outputUsd":null,"outputUnit":null,"sourceUrl":"https://fireworks.ai/pricing","asOf":"2026-10-03"},"estimatedTaskCost":{"tasks":1000,"retryAndToolOverheadMultiplier":1.15,"retryToolOverheadMultiplier":1.15,"inputTokensPerTask":4000,"outputTokensPerTask":0,"baseCostPer1kTasksUsd":0.032,"totalUsd":0.0368,"estimatedTotalUsd":0.0368,"perTaskUsd":0.000037,"estimatedCostPerTaskUsd":0.000037,"formula":"((4,000 tokens * $0.008/1M) * 1,000 tasks) * 1.15 overhead","assumptions":"1,000 agent tasks @ 4k input + 1k output tokens/task with 1.15x retry/tool-call overhead."}},"representativeQuote":{"skuId":"fireworks-embed-to-150m","item":"Embeddings up to 150M params","plan":"Embeddings up to 150M params — parameter-count bucket, not a named chat model","amountUsd":0.008,"inputOrUnitUsd":0.008,"unit":"usd_per_million_input_tokens","outputUsd":null,"outputUnit":null,"sourceUrl":"https://fireworks.ai/pricing","asOf":"2026-10-03"},"estimatedTaskCost":{"tasks":1000,"retryAndToolOverheadMultiplier":1.15,"retryToolOverheadMultiplier":1.15,"inputTokensPerTask":4000,"outputTokensPerTask":0,"baseCostPer1kTasksUsd":0.032,"totalUsd":0.0368,"estimatedTotalUsd":0.0368,"perTaskUsd":0.000037,"estimatedCostPerTaskUsd":0.000037,"formula":"((4,000 tokens * $0.008/1M) * 1,000 tasks) * 1.15 overhead","assumptions":"1,000 agent tasks @ 4k input + 1k output tokens/task with 1.15x retry/tool-call overhead."},"reason":null,"priceWinnerNote":"Pick is not a price winner. Cheapest sourced input $/1M among candidates is chutes at 0.039. The pick has no priceSortEligible input row."},"pickIsNotPriceWinner":true,"freeResources":[{"id":"deepseek-r1-weights","name":"DeepSeek-R1 weights","kind":"open_weights","cost":"oss","substitutable":true,"sourceUrl":"https://huggingface.co/deepseek-ai/DeepSeek-R1/raw/main/LICENSE"},{"id":"deepseek-v3.2-weights","name":"DeepSeek-V3.2 weights","kind":"open_weights","cost":"oss","substitutable":true,"sourceUrl":"https://huggingface.co/deepseek-ai/DeepSeek-V3.2/raw/main/LICENSE"},{"id":"exo","name":"exo","kind":"local_runtime","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/exo-explore/exo/main/LICENSE"}],"freeMatch":"jtbd","paidPick":{"available":true,"unavailableReason":null,"providerId":"fireworks","scoreAsOf":"2026-09-14","scoreAgeDays":43,"scoreStale":true,"runnerUpId":"together","cite":"Depot Pick for open-model-inference: fireworks (asOf 2026-09-14). See GET /api/jtbds/open-model-inference + GET /api/methodology.","citePath":"/api/jtbds/open-model-inference"},"recommendation":{"mode":"free_only","use":[{"id":"deepseek-r1-weights","name":"DeepSeek-R1 weights","kind":"open_weights","cost":"oss","substitutable":true,"sourceUrl":"https://huggingface.co/deepseek-ai/DeepSeek-R1/raw/main/LICENSE"},{"id":"deepseek-v3.2-weights","name":"DeepSeek-V3.2 weights","kind":"open_weights","cost":"oss","substitutable":true,"sourceUrl":"https://huggingface.co/deepseek-ai/DeepSeek-V3.2/raw/main/LICENSE"},{"id":"exo","name":"exo","kind":"local_runtime","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/exo-explore/exo/main/LICENSE"}],"gap":null,"creditsNotFree":[],"doesNotPromotePaidSku":true}},{"jtbdId":"self-host-vector","decide":{"available":true,"unavailableReason":null,"providerId":"qdrant","scoreAsOf":"2026-10-19","scoreAgeDays":8,"scoreStale":false,"runnerUpId":"weaviate","cite":"Depot Pick for self-host-vector: qdrant (asOf 2026-10-19). See GET /api/jtbds/self-host-vector + GET /api/methodology.","citePath":"/api/jtbds/self-host-vector"},"quote":{"available":true,"unavailableReason":null,"cheapest":null,"recommendedWorkloadQuote":null,"representativeQuote":null,"estimatedTaskCost":null,"reason":"Nothing was compared. no comparable sourced unit for this job; chat input $/1M and other units were not borrowed pickIsPriceWinner is null.","priceWinnerNote":"Nothing was compared. no comparable sourced unit for this job; chat input $/1M and other units were not borrowed pickIsPriceWinner is null."},"pickIsNotPriceWinner":false,"freeResources":[{"id":"chroma","name":"Chroma","kind":"dev_tool","cost":"oss","substitutable":true,"sourceUrl":"https://github.com/chroma-core/chroma/blob/main/LICENSE"},{"id":"faiss","name":"FAISS","kind":"free_vector","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/facebookresearch/faiss/main/LICENSE"},{"id":"lancedb","name":"LanceDB","kind":"dev_tool","cost":"oss","substitutable":true,"sourceUrl":"https://github.com/lancedb/lancedb/blob/main/LICENSE"}],"freeMatch":"jtbd","paidPick":{"available":true,"unavailableReason":null,"providerId":"qdrant","scoreAsOf":"2026-10-19","scoreAgeDays":8,"scoreStale":false,"runnerUpId":"weaviate","cite":"Depot Pick for self-host-vector: qdrant (asOf 2026-10-19). See GET /api/jtbds/self-host-vector + GET /api/methodology.","citePath":"/api/jtbds/self-host-vector"},"recommendation":{"mode":"free_only","use":[{"id":"chroma","name":"Chroma","kind":"dev_tool","cost":"oss","substitutable":true,"sourceUrl":"https://github.com/chroma-core/chroma/blob/main/LICENSE"},{"id":"faiss","name":"FAISS","kind":"free_vector","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/facebookresearch/faiss/main/LICENSE"},{"id":"lancedb","name":"LanceDB","kind":"dev_tool","cost":"oss","substitutable":true,"sourceUrl":"https://github.com/lancedb/lancedb/blob/main/LICENSE"}],"gap":null,"creditsNotFree":[],"doesNotPromotePaidSku":true}},{"jtbdId":"self-host-browser","decide":{"available":true,"unavailableReason":null,"providerId":"steel-dev","scoreAsOf":"2026-09-14","scoreAgeDays":43,"scoreStale":true,"runnerUpId":"browserless","cite":"Depot Pick for self-host-browser: steel-dev (asOf 2026-09-14). See GET /api/jtbds/self-host-browser + GET /api/methodology.","citePath":"/api/jtbds/self-host-browser"},"quote":{"available":true,"unavailableReason":null,"cheapest":{"providerId":"steel-dev","slug":"steel-dev","name":"Steel.dev","skuId":"steel-scale-browser-hour","sku":"Scale browser hours","item":"Scale browser hours","plan":"Scale browser hours — Billed by the minute, rounded up","isFloorPrice":true,"floorWarning":"Provider-wide floor SKU; may not be the flagship model scored for this JTBD.","skuKind":"browser_hour","unit":"usd_per_browser_hour","amountUsd":0.08,"comparison":"min sourced browser-hour among candidates; lowest browser-hour tier per provider; not quality-adjusted; proxy per GB, CAPTCHA solves, monthly plans, and chat tokens were not included","usdPerMillionInputTokens":null,"sourceUrl":"https://docs.steel.dev/overview/pricinglimits","asOf":"2026-10-03"},"recommendedWorkloadQuote":{"providerId":"steel-dev","providerName":"Steel.dev","skuId":"steel-scale-browser-hour","item":"Scale browser hours","plan":"Scale browser hours — Billed by the minute, rounded up","unit":"usd_per_browser_hour","amountUsd":0.08,"outputSkuId":null,"outputItem":null,"outputAmountUsd":null,"outputUnit":null,"sourceUrl":"https://docs.steel.dev/overview/pricinglimits","asOf":"2026-10-03","pricingLastVerifiedAt":"2026-10-03","isFlagshipForJob":false,"differsFromFloorCheapest":false,"representativeQuote":{"skuId":"steel-scale-browser-hour","item":"Scale browser hours","plan":"Scale browser hours — Billed by the minute, rounded up","amountUsd":0.08,"inputOrUnitUsd":0.08,"unit":"usd_per_browser_hour","outputUsd":null,"outputUnit":null,"sourceUrl":"https://docs.steel.dev/overview/pricinglimits","asOf":"2026-10-03"},"estimatedTaskCost":{"tasks":1000,"retryAndToolOverheadMultiplier":1.15,"retryToolOverheadMultiplier":1.15,"unitsPerTask":0.05,"baseCostPer1kTasksUsd":4,"totalUsd":4.6,"estimatedTotalUsd":4.6,"perTaskUsd":0.0046,"estimatedCostPerTaskUsd":0.0046,"formula":"(1,000 tasks * 0.05 hr/task * $0.08/browser_hour) * 1.15 overhead","assumptions":"1,000 tasks @ 3 min (0.05 hr) runtime per task with 1.15x retry overhead."}},"representativeQuote":{"skuId":"steel-scale-browser-hour","item":"Scale browser hours","plan":"Scale browser hours — Billed by the minute, rounded up","amountUsd":0.08,"inputOrUnitUsd":0.08,"unit":"usd_per_browser_hour","outputUsd":null,"outputUnit":null,"sourceUrl":"https://docs.steel.dev/overview/pricinglimits","asOf":"2026-10-03"},"estimatedTaskCost":{"tasks":1000,"retryAndToolOverheadMultiplier":1.15,"retryToolOverheadMultiplier":1.15,"unitsPerTask":0.05,"baseCostPer1kTasksUsd":4,"totalUsd":4.6,"estimatedTotalUsd":4.6,"perTaskUsd":0.0046,"estimatedCostPerTaskUsd":0.0046,"formula":"(1,000 tasks * 0.05 hr/task * $0.08/browser_hour) * 1.15 overhead","assumptions":"1,000 tasks @ 3 min (0.05 hr) runtime per task with 1.15x retry overhead."},"reason":null,"priceWinnerNote":"Only 1 candidate has a matching USD per browser-hour; nothing was compared, so pickIsPriceWinner is null."},"pickIsNotPriceWinner":false,"freeResources":[{"id":"browsergym","name":"BrowserGym","kind":"free_data","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/ServiceNow/BrowserGym/main/LICENSE"},{"id":"camoufox","name":"Camoufox","kind":"free_browser","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/daijro/camoufox/main/LICENSE"},{"id":"chrome-devtools-mcp","name":"Chrome DevTools MCP","kind":"free_mcp","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/ChromeDevTools/chrome-devtools-mcp/main/LICENSE"}],"freeMatch":"jtbd","paidPick":{"available":true,"unavailableReason":null,"providerId":"steel-dev","scoreAsOf":"2026-09-14","scoreAgeDays":43,"scoreStale":true,"runnerUpId":"browserless","cite":"Depot Pick for self-host-browser: steel-dev (asOf 2026-09-14). See GET /api/jtbds/self-host-browser + GET /api/methodology.","citePath":"/api/jtbds/self-host-browser"},"recommendation":{"mode":"free_only","use":[{"id":"browsergym","name":"BrowserGym","kind":"free_data","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/ServiceNow/BrowserGym/main/LICENSE"},{"id":"camoufox","name":"Camoufox","kind":"free_browser","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/daijro/camoufox/main/LICENSE"},{"id":"chrome-devtools-mcp","name":"Chrome DevTools MCP","kind":"free_mcp","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/ChromeDevTools/chrome-devtools-mcp/main/LICENSE"}],"gap":null,"creditsNotFree":[],"doesNotPromotePaidSku":true}},{"jtbdId":"wasm-edge-small-models","decide":{"available":true,"unavailableReason":null,"providerId":"cloudflare-workers-ai","scoreAsOf":"2026-09-14","scoreAgeDays":43,"scoreStale":true,"runnerUpId":"groq","cite":"Depot Pick for wasm-edge-small-models: cloudflare-workers-ai (asOf 2026-09-14). See GET /api/jtbds/wasm-edge-small-models + GET /api/methodology.","citePath":"/api/jtbds/wasm-edge-small-models"},"quote":{"available":true,"unavailableReason":null,"cheapest":{"providerId":"cloudflare-workers-ai","slug":"cloudflare-workers-ai","name":"Cloudflare Workers AI","skuId":"cloudflare-workers-ai-cf-ibm-granite-granite-4-0-h-micro-in","sku":"@cf/ibm-granite/granite-4.0-h-micro","item":"@cf/ibm-granite/granite-4.0-h-micro","plan":"@cf/ibm-granite/granite-4.0-h-micro — LLM model pricing, Price in Tokens column","isFloorPrice":true,"floorWarning":"Provider-wide floor SKU; may not be the flagship model scored for this JTBD.","skuKind":"chat_completion_input","unit":"usd_per_million_input_tokens","amountUsd":0.017,"comparison":"min sourced input SKU among candidates; not quality-adjusted","usdPerMillionInputTokens":0.017,"sourceUrl":"https://developers.cloudflare.com/workers-ai/platform/pricing/","asOf":"2026-10-03"},"recommendedWorkloadQuote":{"providerId":"cloudflare-workers-ai","providerName":"Cloudflare Workers AI","skuId":"cloudflare-workers-ai-cf-baai-bge-reranker-base-in","item":"@cf/baai/bge-reranker-base","plan":"@cf/baai/bge-reranker-base — Other model pricing, not the LLM table","unit":"usd_per_million_input_tokens","amountUsd":0.003,"outputSkuId":null,"outputItem":null,"outputAmountUsd":null,"outputUnit":null,"sourceUrl":"https://developers.cloudflare.com/workers-ai/platform/pricing/","asOf":"2026-10-03","pricingLastVerifiedAt":"2026-10-27","isFlagshipForJob":false,"differsFromFloorCheapest":false,"representativeQuote":{"skuId":"cloudflare-workers-ai-cf-baai-bge-reranker-base-in","item":"@cf/baai/bge-reranker-base","plan":"@cf/baai/bge-reranker-base — Other model pricing, not the LLM table","amountUsd":0.003,"inputOrUnitUsd":0.003,"unit":"usd_per_million_input_tokens","outputUsd":null,"outputUnit":null,"sourceUrl":"https://developers.cloudflare.com/workers-ai/platform/pricing/","asOf":"2026-10-03"},"estimatedTaskCost":{"tasks":1000,"retryAndToolOverheadMultiplier":1.15,"retryToolOverheadMultiplier":1.15,"inputTokensPerTask":4000,"outputTokensPerTask":0,"baseCostPer1kTasksUsd":0.012,"totalUsd":0.0138,"estimatedTotalUsd":0.0138,"perTaskUsd":0.000014,"estimatedCostPerTaskUsd":0.000014,"formula":"((4,000 tokens * $0.003/1M) * 1,000 tasks) * 1.15 overhead","assumptions":"1,000 agent tasks @ 4k input + 1k output tokens/task with 1.15x retry/tool-call overhead."}},"representativeQuote":{"skuId":"cloudflare-workers-ai-cf-baai-bge-reranker-base-in","item":"@cf/baai/bge-reranker-base","plan":"@cf/baai/bge-reranker-base — Other model pricing, not the LLM table","amountUsd":0.003,"inputOrUnitUsd":0.003,"unit":"usd_per_million_input_tokens","outputUsd":null,"outputUnit":null,"sourceUrl":"https://developers.cloudflare.com/workers-ai/platform/pricing/","asOf":"2026-10-03"},"estimatedTaskCost":{"tasks":1000,"retryAndToolOverheadMultiplier":1.15,"retryToolOverheadMultiplier":1.15,"inputTokensPerTask":4000,"outputTokensPerTask":0,"baseCostPer1kTasksUsd":0.012,"totalUsd":0.0138,"estimatedTotalUsd":0.0138,"perTaskUsd":0.000014,"estimatedCostPerTaskUsd":0.000014,"formula":"((4,000 tokens * $0.003/1M) * 1,000 tasks) * 1.15 overhead","assumptions":"1,000 agent tasks @ 4k input + 1k output tokens/task with 1.15x retry/tool-call overhead."},"reason":null,"priceWinnerNote":"Pick is the cheapest sourced input $/1M among candidates (0.017)."},"pickIsNotPriceWinner":false,"freeResources":[{"id":"gemma-terms-of-use","name":"Gemma models under the Gemma Terms of Use","kind":"open_weights","cost":"free","substitutable":true,"sourceUrl":"https://ai.google.dev/gemma/terms"}],"freeMatch":"jtbd","paidPick":{"available":true,"unavailableReason":null,"providerId":"cloudflare-workers-ai","scoreAsOf":"2026-09-14","scoreAgeDays":43,"scoreStale":true,"runnerUpId":"groq","cite":"Depot Pick for wasm-edge-small-models: cloudflare-workers-ai (asOf 2026-09-14). See GET /api/jtbds/wasm-edge-small-models + GET /api/methodology.","citePath":"/api/jtbds/wasm-edge-small-models"},"recommendation":{"mode":"free_only","use":[{"id":"gemma-terms-of-use","name":"Gemma models under the Gemma Terms of Use","kind":"open_weights","cost":"free","substitutable":true,"sourceUrl":"https://ai.google.dev/gemma/terms"}],"gap":null,"creditsNotFree":[],"doesNotPromotePaidSku":true}},{"jtbdId":"on-device-edge-batch","decide":{"available":true,"unavailableReason":null,"providerId":"salad","scoreAsOf":"2026-10-19","scoreAgeDays":8,"scoreStale":false,"runnerUpId":"vast-ai","cite":"Depot Pick for on-device-edge-batch: salad (asOf 2026-10-19). See GET /api/jtbds/on-device-edge-batch + GET /api/methodology.","citePath":"/api/jtbds/on-device-edge-batch"},"quote":{"available":true,"unavailableReason":null,"cheapest":{"providerId":"salad","slug":"salad","name":"SaladCloud","skuId":"salad-gpu-rtx-3090-lowest","sku":"RTX 3090 24GB (Lowest priority, batch)","item":"RTX 3090 24GB (Lowest priority, batch)","plan":"RTX 3090 24GB (Lowest priority, batch) — USD per GPU-hour, Lowest (batch) tier: the most interruptible","isFloorPrice":true,"floorWarning":"Provider-wide floor SKU; may not be the flagship model scored for this JTBD.","skuKind":"gpu_hour","unit":"usd_per_gpu_hour","amountUsd":0.09,"comparison":"min sourced GPU-hour SKU among candidates; not coerced to $/1M; per-second GPU was not included; not quality-adjusted","usdPerMillionInputTokens":null,"sourceUrl":"https://salad.com/pricing","asOf":"2026-10-19"},"recommendedWorkloadQuote":{"providerId":"salad","providerName":"SaladCloud","skuId":"salad-gpu-rtx-3090-lowest","item":"RTX 3090 24GB (Lowest priority, batch)","plan":"RTX 3090 24GB (Lowest priority, batch) — USD per GPU-hour, Lowest (batch) tier: the most interruptible","unit":"usd_per_gpu_hour","amountUsd":0.09,"outputSkuId":null,"outputItem":null,"outputAmountUsd":null,"outputUnit":null,"sourceUrl":"https://salad.com/pricing","asOf":"2026-10-19","pricingLastVerifiedAt":"2026-10-19","isFlagshipForJob":false,"differsFromFloorCheapest":false,"representativeQuote":{"skuId":"salad-gpu-rtx-3090-lowest","item":"RTX 3090 24GB (Lowest priority, batch)","plan":"RTX 3090 24GB (Lowest priority, batch) — USD per GPU-hour, Lowest (batch) tier: the most interruptible","amountUsd":0.09,"inputOrUnitUsd":0.09,"unit":"usd_per_gpu_hour","outputUsd":null,"outputUnit":null,"sourceUrl":"https://salad.com/pricing","asOf":"2026-10-19"},"estimatedTaskCost":{"tasks":1000,"retryAndToolOverheadMultiplier":1.15,"retryToolOverheadMultiplier":1.15,"unitsPerTask":0.05,"baseCostPer1kTasksUsd":4.5,"totalUsd":5.175,"estimatedTotalUsd":5.175,"perTaskUsd":0.005175,"estimatedCostPerTaskUsd":0.005175,"formula":"(1,000 tasks * 0.05 hr/task * $0.09/gpu_hour) * 1.15 overhead","assumptions":"1,000 tasks @ 3 min (0.05 hr) runtime per task with 1.15x retry overhead."}},"representativeQuote":{"skuId":"salad-gpu-rtx-3090-lowest","item":"RTX 3090 24GB (Lowest priority, batch)","plan":"RTX 3090 24GB (Lowest priority, batch) — USD per GPU-hour, Lowest (batch) tier: the most interruptible","amountUsd":0.09,"inputOrUnitUsd":0.09,"unit":"usd_per_gpu_hour","outputUsd":null,"outputUnit":null,"sourceUrl":"https://salad.com/pricing","asOf":"2026-10-19"},"estimatedTaskCost":{"tasks":1000,"retryAndToolOverheadMultiplier":1.15,"retryToolOverheadMultiplier":1.15,"unitsPerTask":0.05,"baseCostPer1kTasksUsd":4.5,"totalUsd":5.175,"estimatedTotalUsd":5.175,"perTaskUsd":0.005175,"estimatedCostPerTaskUsd":0.005175,"formula":"(1,000 tasks * 0.05 hr/task * $0.09/gpu_hour) * 1.15 overhead","assumptions":"1,000 tasks @ 3 min (0.05 hr) runtime per task with 1.15x retry overhead."},"reason":null,"priceWinnerNote":"Pick is the cheapest matching USD per GPU-hour among candidates (0.09)."},"pickIsNotPriceWinner":false,"freeResources":[{"id":"exo","name":"exo","kind":"local_runtime","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/exo-explore/exo/main/LICENSE"},{"id":"llamafile","name":"llamafile","kind":"local_runtime","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/Mozilla-Ocho/llamafile/main/LICENSE"},{"id":"mlx","name":"MLX","kind":"local_runtime","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/ml-explore/mlx/main/LICENSE"}],"freeMatch":"jtbd","paidPick":{"available":true,"unavailableReason":null,"providerId":"salad","scoreAsOf":"2026-10-19","scoreAgeDays":8,"scoreStale":false,"runnerUpId":"vast-ai","cite":"Depot Pick for on-device-edge-batch: salad (asOf 2026-10-19). See GET /api/jtbds/on-device-edge-batch + GET /api/methodology.","citePath":"/api/jtbds/on-device-edge-batch"},"recommendation":{"mode":"free_only","use":[{"id":"exo","name":"exo","kind":"local_runtime","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/exo-explore/exo/main/LICENSE"},{"id":"llamafile","name":"llamafile","kind":"local_runtime","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/Mozilla-Ocho/llamafile/main/LICENSE"},{"id":"mlx","name":"MLX","kind":"local_runtime","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/ml-explore/mlx/main/LICENSE"}],"gap":null,"creditsNotFree":[],"doesNotPromotePaidSku":true}}],"failures":[{"id":"silent-truncation","name":"Silent truncation","detection":"Tools must return whether the payload was truncated and how long the original was. Fail the task if the answer depends on the missing span."},{"id":"context-overflow","name":"Context overflow","detection":"If the input exceeds the window, say so and retrieve a narrower slice. Do not answer from a truncated head as if it were the whole source."},{"id":"schema-drift","name":"Schema drift","detection":"Validate every tool call and every loaded table against the current schema. Quarantine mismatches instead of coercing them."},{"id":"non-determinism","name":"Non-determinism","detection":"Run the task more than once and compare the end state, not a single transcript. Record the trial count next to any success rate you cite."},{"id":"stale-retrieval","name":"Stale retrieval","detection":"Store the source URL and the time it was fetched. If a newer canonical page exists, or two stored sources disagree, do not answer from the older one."},{"id":"lost-in-the-middle","name":"Lost in the middle","detection":"Ask the agent to name the passage it used. Spot-check questions whose only support sits in the middle of the context, not only at the edges."}],"failuresOmittedBecauseMissing":[],"caseStudies":[{"id":"memgpt-2023","title":"MemGPT: Towards LLMs as Operating Systems","sourceUrl":"https://arxiv.org/abs/2310.08560","year":2023,"studyKind":"mechanism_study"}],"caseStudiesRelated":1,"caseStudiesOmitted":0,"caseStudiesReason":null,"links":{"kit":"/api/kit?class=local-offline&cost=free","page":"/agents/kit/local-offline?cost=free","agentClass":"/api/agent-classes/local-offline","failures":"/api/failures","caseStudies":"/api/case-studies?class=local-offline"},"recommendation":{"mode":"free_only","doesNotPromotePaidSku":true,"use":[{"jtbdId":"air-gapped-model-serve","paidPick":{"available":true,"unavailableReason":null,"providerId":"nvidia-nim","scoreAsOf":"2026-10-19","scoreAgeDays":8,"scoreStale":false,"runnerUpId":"huggingface-inference","cite":"Depot Pick for air-gapped-model-serve: nvidia-nim (asOf 2026-10-19). See GET /api/jtbds/air-gapped-model-serve + GET /api/methodology.","citePath":"/api/jtbds/air-gapped-model-serve"},"use":[],"gap":"no_free_resource_for_job","creditsNotFree":[]},{"jtbdId":"open-model-inference","paidPick":{"available":true,"unavailableReason":null,"providerId":"fireworks","scoreAsOf":"2026-09-14","scoreAgeDays":43,"scoreStale":true,"runnerUpId":"together","cite":"Depot Pick for open-model-inference: fireworks (asOf 2026-09-14). See GET /api/jtbds/open-model-inference + GET /api/methodology.","citePath":"/api/jtbds/open-model-inference"},"use":[{"id":"deepseek-r1-weights","name":"DeepSeek-R1 weights","kind":"open_weights","cost":"oss","substitutable":true,"sourceUrl":"https://huggingface.co/deepseek-ai/DeepSeek-R1/raw/main/LICENSE"},{"id":"deepseek-v3.2-weights","name":"DeepSeek-V3.2 weights","kind":"open_weights","cost":"oss","substitutable":true,"sourceUrl":"https://huggingface.co/deepseek-ai/DeepSeek-V3.2/raw/main/LICENSE"},{"id":"exo","name":"exo","kind":"local_runtime","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/exo-explore/exo/main/LICENSE"}],"gap":null,"creditsNotFree":[]},{"jtbdId":"self-host-vector","paidPick":{"available":true,"unavailableReason":null,"providerId":"qdrant","scoreAsOf":"2026-10-19","scoreAgeDays":8,"scoreStale":false,"runnerUpId":"weaviate","cite":"Depot Pick for self-host-vector: qdrant (asOf 2026-10-19). See GET /api/jtbds/self-host-vector + GET /api/methodology.","citePath":"/api/jtbds/self-host-vector"},"use":[{"id":"chroma","name":"Chroma","kind":"dev_tool","cost":"oss","substitutable":true,"sourceUrl":"https://github.com/chroma-core/chroma/blob/main/LICENSE"},{"id":"faiss","name":"FAISS","kind":"free_vector","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/facebookresearch/faiss/main/LICENSE"},{"id":"lancedb","name":"LanceDB","kind":"dev_tool","cost":"oss","substitutable":true,"sourceUrl":"https://github.com/lancedb/lancedb/blob/main/LICENSE"}],"gap":null,"creditsNotFree":[]},{"jtbdId":"self-host-browser","paidPick":{"available":true,"unavailableReason":null,"providerId":"steel-dev","scoreAsOf":"2026-09-14","scoreAgeDays":43,"scoreStale":true,"runnerUpId":"browserless","cite":"Depot Pick for self-host-browser: steel-dev (asOf 2026-09-14). See GET /api/jtbds/self-host-browser + GET /api/methodology.","citePath":"/api/jtbds/self-host-browser"},"use":[{"id":"browsergym","name":"BrowserGym","kind":"free_data","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/ServiceNow/BrowserGym/main/LICENSE"},{"id":"camoufox","name":"Camoufox","kind":"free_browser","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/daijro/camoufox/main/LICENSE"},{"id":"chrome-devtools-mcp","name":"Chrome DevTools MCP","kind":"free_mcp","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/ChromeDevTools/chrome-devtools-mcp/main/LICENSE"}],"gap":null,"creditsNotFree":[]},{"jtbdId":"wasm-edge-small-models","paidPick":{"available":true,"unavailableReason":null,"providerId":"cloudflare-workers-ai","scoreAsOf":"2026-09-14","scoreAgeDays":43,"scoreStale":true,"runnerUpId":"groq","cite":"Depot Pick for wasm-edge-small-models: cloudflare-workers-ai (asOf 2026-09-14). See GET /api/jtbds/wasm-edge-small-models + GET /api/methodology.","citePath":"/api/jtbds/wasm-edge-small-models"},"use":[{"id":"gemma-terms-of-use","name":"Gemma models under the Gemma Terms of Use","kind":"open_weights","cost":"free","substitutable":true,"sourceUrl":"https://ai.google.dev/gemma/terms"}],"gap":null,"creditsNotFree":[]},{"jtbdId":"on-device-edge-batch","paidPick":{"available":true,"unavailableReason":null,"providerId":"salad","scoreAsOf":"2026-10-19","scoreAgeDays":8,"scoreStale":false,"runnerUpId":"vast-ai","cite":"Depot Pick for on-device-edge-batch: salad (asOf 2026-10-19). See GET /api/jtbds/on-device-edge-batch + GET /api/methodology.","citePath":"/api/jtbds/on-device-edge-batch"},"use":[{"id":"exo","name":"exo","kind":"local_runtime","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/exo-explore/exo/main/LICENSE"},{"id":"llamafile","name":"llamafile","kind":"local_runtime","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/Mozilla-Ocho/llamafile/main/LICENSE"},{"id":"mlx","name":"MLX","kind":"local_runtime","cost":"oss","substitutable":true,"sourceUrl":"https://raw.githubusercontent.com/ml-explore/mlx/main/LICENSE"}],"gap":null,"creditsNotFree":[]}]},"stackContext":{"host":null,"framework":null,"repo":null,"lang":null,"existing":[],"volume":null,"sender":null,"detectedFromTask":[]},"contextAdvice":[],"firstActions":["https://getagentdepot.com/api/hub","https://getagentdepot.com/api/decide?jtbd=air-gapped-model-serve","https://getagentdepot.com/api/quote?jtbd=air-gapped-model-serve","https://getagentdepot.com/api/kit?class=local-offline&cost=free","https://getagentdepot.com/api/failures"],"honesty":["Picks are the current Depot Pick from GET /api/decide. This kit does not rescore.","Cheapest SKU is copied from GET /api/quote for that job. Input and output are not blended. A chat SKU is not borrowed for a non-chat job. If quote.cheapest is null, there is no matching sourced price.","pickIsNotPriceWinner is true only when that job's Depot Pick and cheapest matching SKU both exist and the quote says the pick is not the price winner. If either is missing, the field is false.","freeResources are existing /api/free items whose jtbdIds include that job, up to 3, sorted by id. If none list the job, freeResources is [] and freeMatch is none. Kind, provider, and docs are not fallbacks. Free does not change the pick.","firstActions are endpoint URLs for this class: hub, decide for the first listed need, quote for that need, this kit, and /api/failures. No other step is added.","Failures are the modes already listed on the class. Case studies are the first 3 related studies in catalog order, with the source URL already stored. Omitted studies stay on GET /api/case-studies?class=.","cost=free sets recommendation.mode to free_only. recommendation.use on each need is existing free rows whose jtbd ids include that job, excluding credits_not_free_forever. Those credit rows are listed under creditsNotFree with their stored notes. If none remain, use is [] and gap is no_free_resource_for_job. paidPick is the same decide result and is not free. A cheapest paid SKU is not copied into use."]}