Documentation Index
Fetch the complete documentation index at: https://docs.qwedai.com/llms.txt
Use this file to discover all available pages before exploring further.
Learn how to set up and run QWED in your development environment.
Don’t call your LLM directly. QWED runs as a backend server with your LLM API keys configured in environment variables. See Common pitfalls for details.
Architecture overview
QWED uses a backend server model:
Your application
↓ (SDK calls)
QWED backend server (you run this)
├─ Your LLM API key (from .env)
├─ LLM calls (OpenAI/Anthropic/etc)
├─ Formal verifiers (SymPy, Z3)
└─ Returns verified result
Step 1: Clone and install
# Clone the repository
git clone https://github.com/QWED-AI/qwed-verification.git
cd qwed-verification
# Install Python dependencies
pip install -r requirements.txt
QWED is model agnostic — select any LLM based on your needs:
Create environment file
# Copy example configuration
cp .env.example .env
Select your LLM provider
Edit .env and add your API key for one provider:
OpenAI
Anthropic Claude
Azure OpenAI
Google Gemini
Step 3: Run the QWED backend server
# Start the backend server
python -m qwed_api
# You should see:
# INFO: Uvicorn running on http://0.0.0.0:8000
Keep this terminal running. The server must stay active.
Step 4: Install the SDK
In a new terminal, install the QWED SDK in your project:
go get github.com/qwed-ai/qwed-go
Step 5: Use the SDK
Connect your application to the local QWED backend:
from qwed import QWEDClient
# Connect to local backend
client = QWEDClient(
api_key="qwed_local", # Local auth key
base_url="http://localhost:8000"
)
# Verify a mathematical claim
result = client.verify("Is 2+2 equal to 4?")
print(result.verified) # True
print(result.evidence) # {"calculated": 4, "claimed": 4}
import { QWEDClient } from '@qwed-ai/sdk';
// Connect to local backend
const client = new QWEDClient({
apiKey: 'qwed_local',
baseUrl: 'http://localhost:8000'
});
// Verify a mathematical claim
const result = await client.verify('Is 2+2 equal to 4?');
console.log(result.verified); // true
console.log(result.evidence); // {calculated: 4, claimed: 4}
package main
import (
"context"
"fmt"
"github.com/qwed-ai/qwed-go"
)
func main() {
client := qwed.NewClient("qwed_local", "http://localhost:8000")
result, err := client.Verify(context.Background(), "Is 2+2 equal to 4?")
if err != nil {
panic(err)
}
fmt.Println(result.Verified) // true
}
Verify installation
Run this test to ensure everything is working:
from qwed import QWEDClient
client = QWEDClient(
api_key="qwed_local",
base_url="http://localhost:8000"
)
# Test 1: Math verification
assert client.verify("2+2=4").verified == True
print("✅ Math verification works!")
# Test 2: Error detection
assert client.verify("2+2=5").verified == False
print("✅ Error detection works!")
# Test 3: Code security
result = client.verify_code("eval(user_input)", language="python")
assert result.blocked == True
print("✅ Security detection works!")
print("\n🎉 QWED is working correctly!")
import { QWEDClient } from '@qwed-ai/sdk';
const client = new QWEDClient({
apiKey: 'qwed_local',
baseUrl: 'http://localhost:8000'
});
async function testIntegration() {
// Test 1: Math verification
const result1 = await client.verify('2+2=4');
console.assert(result1.verified === true);
console.log('✅ Math verification works!');
// Test 2: Error detection
const result2 = await client.verify('2+2=5');
console.assert(result2.verified === false);
console.log('✅ Error detection works!');
// Test 3: Code security
const result3 = await client.verifyCode('eval(user_input)', { language: 'python' });
console.assert(result3.blocked === true);
console.log('✅ Security detection works!');
console.log('\n🎉 QWED is working correctly!');
}
testIntegration();
Next steps
Once your integration is working:
Troubleshooting
Backend won’t start
Problem:
Error: ANTHROPIC_API_KEY environment variable not set
Solution: Check your .env file has the correct API key for your selected provider.
SDK can’t connect
Problem:
Connection refused to http://localhost:8000
Solution:
- Make sure backend is running (
python -m qwed_api)
- Check backend terminal for errors
- Verify port 8000 is not blocked
Wrong results
Problem: Verification results are incorrect or unexpected.
Solution:
- Check which LLM provider you configured
- Verify your API key is valid
- See Testing guide for detailed diagnostics
Need help?