Files
promptfoo--promptfoo/site/docs/guides/deepseek-benchmark.md
T
wehub-resource-sync 0d3cb498a3
CI / Shell Format Check (push) Has been cancelled
CI / Check Ruby (3.4) (push) Has been cancelled
CI / CI Config (push) Has been cancelled
CI / Test on Node ${{ matrix.node }} and ${{ matrix.os }}${{ matrix.shard && format(' (shard {0}/3)', matrix.shard) || '' }} (push) Has been cancelled
CI / Build on Node ${{ matrix.node }} (push) Has been cancelled
CI / Style Check (push) Has been cancelled
CI / Generate Assets (push) Has been cancelled
CI / Check Python (3.14) (push) Has been cancelled
CI / Check Python (3.9) (push) Has been cancelled
CI / Build Docs (push) Has been cancelled
CI / Code Scan Action (push) Has been cancelled
CI / Site tests (push) Has been cancelled
CI / webui tests (push) Has been cancelled
CI / Run Integration Tests (push) Has been cancelled
CI / Run Smoke Tests (push) Has been cancelled
CI / Go Tests (push) Has been cancelled
CI / Share Test (push) Has been cancelled
CI / Redteam (Production API) (push) Has been cancelled
CI / Redteam (Staging API) (push) Has been cancelled
CI / GitHub Actions Lint (push) Has been cancelled
CI / Check Ruby (3.0) (push) Has been cancelled
release-please / release-please (push) Has been cancelled
release-please / build (push) Has been cancelled
release-please / publish-npm (push) Has been cancelled
release-please / publish-npm-backfill (push) Has been cancelled
release-please / docker (push) Has been cancelled
release-please / publish-code-scan-action (push) Has been cancelled
release-please / attest-code-scan-action (push) Has been cancelled
Deploy local.promptfoo.app / Deploy to Cloudflare Pages (push) Has been cancelled
Test and Publish Multi-arch Docker Image / test (push) Has been cancelled
Test and Publish Multi-arch Docker Image / build-docker-and-push-digests (map[digest-suffix:linux-amd64 platform:linux/amd64 runner:ubuntu-latest]) (push) Has been cancelled
Test and Publish Multi-arch Docker Image / build-docker-and-push-digests (map[digest-suffix:linux-arm64 platform:linux/arm64 runner:ubuntu-24.04-arm]) (push) Has been cancelled
Test and Publish Multi-arch Docker Image / merge-docker-digests (push) Has been cancelled
Test and Publish Multi-arch Docker Image / Attest Multi-arch Image (push) Has been cancelled
Validate Renovate Config / Validate Renovate Configuration (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:24:08 +08:00

160 lines
5.2 KiB
Markdown

---
sidebar_label: DeepSeek Benchmark
description: Compare DeepSeek V3.2 vs GPT-5 vs Llama 4 Maverick performance with custom benchmarks to evaluate code tasks and choose the optimal model for your needs
---
# DeepSeek vs GPT vs O3 vs Llama: Run a Custom Benchmark
DeepSeek is a model family known for strong reasoning and coding performance.
When evaluating LLMs for your application, generic benchmarks often fall short of capturing the specific requirements of your use case. This guide will walk you through creating a tailored benchmark to compare DeepSeek V3.2, OpenAI's GPT-5 and o3-mini, and Llama 4 Maverick for your specific needs.
In this guide, we'll create a practical comparison that results in a detailed side-by-side analysis view.
## Requirements
- Node.js `^20.20.0` or `>=22.22.0`
- OpenRouter API access for DeepSeek and Llama (set `OPENROUTER_API_KEY`)
- OpenAI API access for GPT-5 and o3-mini (set `OPENAI_API_KEY`)
## Step 1: Project Setup
Create a new directory with a `promptfooconfig.yaml` file:
```sh
mkdir deepseek-benchmark
cd deepseek-benchmark
```
## Step 2: Model Configuration
Edit your `promptfooconfig.yaml` to include the four models:
```yaml title="promptfooconfig.yaml"
providers:
- 'openai:gpt-5'
- 'openai:o3-mini'
- 'openrouter:meta-llama/llama-4-maverick'
- 'openrouter:deepseek/deepseek-v3.2'
# Optional: Configure model parameters
providers:
- id: openai:gpt-5
config:
temperature: 0.7
max_tokens: 1000
- id: openai:o3-mini
config:
max_tokens: 1000
- id: openrouter:meta-llama/llama-4-maverick
config:
temperature: 0.7
max_tokens: 1000
- id: openrouter:deepseek/deepseek-v3.2
config:
max_tokens: 1000
```
Don't forget to set your API keys:
```sh
export OPENROUTER_API_KEY=your_openrouter_api_key
export OPENAI_API_KEY=your_openai_api_key
```
## Step 3: Design Your Test Cases
Let's create a comprehensive test suite that evaluates the models across different dimensions:
```yaml
tests:
# Complex reasoning tasks
- vars:
input: 'What are the implications of quantum computing on current cryptography systems?'
assert:
- type: llm-rubric
value: 'Response should discuss both the threats to current encryption and potential solutions'
# Code generation
- vars:
input: 'Write a Python function to implement merge sort'
assert:
- type: contains
value: 'def merge_sort'
# Mathematical problem solving
- vars:
input: 'Solve this calculus problem: Find the derivative of f(x) = x^3 * ln(x)'
assert:
- type: llm-rubric
value: 'Response should show clear mathematical steps, use proper calculus notation, and arrive at the correct answer: 3x^2*ln(x) + x^2'
- type: contains
value: 'derivative'
- type: contains
value: 'product rule'
# Structured output
- vars:
input: 'Output a JSON object with the following fields: name, age, and email'
assert:
- type: is-json
value:
required:
- name
- age
- email
type: object
properties:
name:
type: string
age:
type: number
minimum: 0
maximum: 150
email:
type: string
format: email
```
## Step 4: Run Your Evaluation
Execute the benchmark:
```sh
npx promptfoo@latest eval
```
View the results in an interactive interface:
```sh
npx promptfoo@latest view
```
## Model Comparison
Here's how these models compare based on public benchmarks:
| Model | Architecture | Parameters | Key Strengths |
| ---------------- | ------------ | ---------- | ------------------------------------------ |
| DeepSeek-V3.2 | Sparse/MoE | Unknown | Strong reasoning, tool use, and code tasks |
| GPT-5 | Unknown | Unknown | Consistent performance across tasks |
| o3-mini | Unknown | Unknown | Reasoning and code tasks |
| Llama 4 Maverick | MoE | Unknown | Strong open-weight general model |
However, your custom benchmark results may differ significantly based on your specific use case.
## Considerations for Model Selection
When choosing between these models, consider:
1. **Task Specificity**: DeepSeek excels in mathematical and coding tasks
2. **Resource Requirements**: DeepSeek V3.2 is more resource-intensive than smaller open models, for example.
3. **API Availability**: Factor in API reliability and geographic availability, given that GPT is a proprietary model that requires internet access.
4. **Cost Structure**: Model pricing will vary by providers, and providers are constantly driving down costs.
## Conclusion
While public benchmarks show DeepSeek V3.2 performing strongly in reasoning-heavy tasks, GPT-5 maintaining strong general performance, o3 with strong reasoning performance, and Llama 4 Maverick offering a balanced open-weight option, your specific use case may yield different results.
Remember that the best model for your application depends on your specific requirements, constraints, and use cases. Use this guide as a starting point to create a benchmark that truly matters for your application.