deepforce-coder-v2 / README.md
deepforce's picture
Upload README.md with huggingface_hub
9ca1276 verified
|
Raw
History Blame Contribute Delete
4.67 kB
metadata
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 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

ollama run hf.co/deepforce/deepforce-coder-v2:Q4_K_M

llama.cpp

llama serve -hf deepforce/deepforce-coder-v2:Q4_K_M

Python (llama-cpp-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 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.