deepforce-coder-v2 / README.md
deepforce's picture
Upload README.md with huggingface_hub
9ca1276 verified
|
Raw
History Blame Contribute Delete
4.67 kB
---
language:
- en
license: apache-2.0
base_model: Qwen/Qwen2.5-Coder-3B-Instruct
tags:
- salesforce
- apex
- lwc
- lightning-web-components
- code
- fine-tuned
- gguf
- unsloth
pipeline_tag: text-generation
---
# DeepForce Coder v2
A Salesforce-specialized AI coding assistant fine-tuned on Qwen 2.5 Coder 3B.
Built specifically for Salesforce developers to generate, debug, review, and refactor
Apex code and Lightning Web Components following enterprise best practices.
> ✅ **v2 improvements over v1:**
> - Fixed hallucinated Apex APIs
> - Simple requests now generate clean minimal code
> - Improved recursion guard patterns
> - Custom weighted adapter merge for better task balance
> - specialized adapters trained independently
## Capabilities
| Task | Description |
|------|-------------|
| Apex Generation | Write production-ready Apex classes, triggers, batch, scheduled, queueable |
| LWC Development | Create Lightning Web Components with SLDS conventions |
| Code Debug | Identify bugs with severity ratings and corrections |
| Code Review | Review code against Salesforce best practices |
| Refactoring | Simplify over-engineered code while preserving security |
| Test Classes | Generate comprehensive Apex test classes |
| Recursion Guards | Correct Apex recursion guard patterns |
| Simple Apex | Clean minimal Apex for simple requirements |
## Best Practices Enforced
- `with sharing` on all classes
- `WITH USER_MODE` on all SOQL queries
- `Security.stripInaccessible()` before DML
- `try-catch` on all DML and callouts
- `Database.update/insert(records, false)` for bulk DML
- No SOQL or DML inside loops
- Bulkified trigger handlers with recursion guards
- Static Set<Id> recursion guard pattern
## Model Details
- **Base model**: Qwen/Qwen2.5-Coder-3B-Instruct
- **Fine-tuning**: specialized LoRA adapters with custom weights
- **Training data**: curated Salesforce-specific examples generated via Claude API
- **Quantization**: Q4_K_M GGUF (1.80 GB)
- **Context length**: 6144 tokens
## Quick Start
### Ollama
```bash
ollama run hf.co/deepforce/deepforce-coder-v2:Q4_K_M
```
### llama.cpp
```bash
llama serve -hf deepforce/deepforce-coder-v2:Q4_K_M
```
### Python (llama-cpp-python)
```python
from llama_cpp import Llama
llm = Llama.from_pretrained(
repo_id = "deepforce/deepforce-coder-v2",
filename = "deepforce-coder-v2-q4_k_m.gguf",
)
response = llm.create_chat_completion(messages=[
{"role": "system", "content": "You are DeepForce Coder, an expert Salesforce developer."},
{"role": "user", "content": "Write a simple Apex class that returns Accounts by industry."}
])
print(response["choices"][0]["message"]["content"])
```
## Example Prompts
**Generate Apex:**
Write a trigger handler for Opportunity that creates a follow-up Task
when StageName changes to Closed Won.
**Debug Apex:**
Debug the following Apex code: [paste your code]
**Review Apex:**
Review the following Apex code for best practices: [paste your code]
**Generate LWC:**
Create an LWC component that displays a list of Accounts in a lightning-datatable.
**Refactor Apex:**
Refactor the following Apex code to the minimum implementation: [paste your code]
**Generate Test Class:**
Generate a comprehensive test class for the following Apex class: [paste your code]
## Adapter Architecture
DeepForce Coder v2 uses a weighted combination of 9 independently trained LoRA adapters:
| Adapter | Weight | Purpose |
|---------|--------|---------|
| apex-main | 18% | Complex Apex generation |
| apex-simple | 18% | Simple clean Apex patterns |
| lwc | 15% | Lightning Web Components |
| apex-testclass | 12% | Test class generation |
| apex-refactor | 10% | Code refactoring |
| apex-recursion | 10% | Recursion guard patterns |
| apex-debug | 8% | Bug identification |
| apex-review | 5% | Code review |
| apex-basic | 4% | Basic patterns |
## Known Limitations in v2
- Test class generation occasionally uses System.assertEquals instead of Assert class
- Recursion guard ID extraction needs improvement (fixed in v3)
- These will be addressed in v3
## Training
Fine-tuned using [Unsloth](https://github.com/unslothai/unsloth) on Google Colab L4 GPU.
Training data generated using Anthropic Claude API.
Each adapter trained independently with set_seed(42) for reproducibility.
## Version History
| Version | Status | Notes |
|---------|--------|-------|
| v1 | ⚠️ Superseded | Hallucinated APIs, over-engineered simple requests |
| v2 | ✅ Current | Fixed hallucinations, custom weighted merge |
| v3 | 🔄 Planned | Assert class fix, better recursion guards |
## License
Apache 2.0 — free for commercial and personal use.