Cohere logo

Command R+ (08-2024)

CommandCurrent
byCohereCohere(ai lab)
Released August 30, 2024
Context128K tokens
Price (In / Out)$2.50/M / $10.00/M
CategoryLarge Language Model
Max Output4K tokens

About Command R+ (08-2024)

Command R+ (08-2024) is a large language model from Cohere. Supports up to 128,000 token context window. Achieves 76.3% on MMLU. Available from $2.50/M input tokens.

Capabilities

textcode

Input Modalities

text

Output Modalities

text

Technical Details

API Identifier
cohere/command-r-plus-08-2024
Category
Large Language Model
Context Window
128,000 tokens
Max Output Tokens
4,000 tokens

Tags

long-context

Run this model yourself

Local and cloud setup for Command R+ (08-2024), with exact configurations, sources and clear evidence limits.

Find a model for your hardware
Local hardwareDocumented setupSources checked Oct 16, 2026

Run complete Command R+ (08-2024) Q4_K_M on a local CPU

Load both exact Bartowski Q4_K_M shards for the complete Command R+ (08-2024) model and its independently pinned native ordinary-chat template. The private non-commercial CPU walkthrough uses one sequence, 4,096 total context tokens and a 512-token output cap. The 128 GiB host allocation is planning headroom; full fit, speed and answer quality remain unmeasured.

Hardware
Owned Intel Core i5-12400 host, 8 inference threads, 128 GiB RAM
Runtime
llama.cpp v0.7.0 (620d2225; full pin in source URL) · CPU
Model format
GGUF · Complete two-shard Q4_K_M mixed GGUF; no runtime quantization or native FP32 claim · Complete two-shard Q4_K_M mixed GGUF quantization; not native FP32
Workload
4,096 token context · 1 concurrent

Based on source documentation; this setup has not been executed by OpenTools. Memory: unknown. No compatible measurement available.

Read the complete setup guide

Before you start

  • Use an owned Ubuntu 24.04 x86_64 Intel CPU host with eight inference threads and an actually available 128 GiB system RAM / 160 GiB free disk allocation. Verify the motherboard/DIMM configuration and actual available capacity before proceeding; the referenced CPU vendor specification is not proof that your whole host is configured that way.
  • The selected named GGUF and native metadata declare CC BY-NC 4.0. The actual publisher license incorporates the Cohere Labs Acceptable Use Addendum and policy. NonCommercial means not primarily intended for commercial advantage or monetary compensation; private or paid-VM use is not an exemption. Retain required attribution, license/disclaimer/source notices and indicate modifications when sharing; do not impose additional restrictions on licensed rights. The incorporated policy prohibits specified harmful/illegal/privacy/deceptive uses and synthetic data outputs for commercial purposes, including model or product development. Read all full terms and assess your own intended use before downloading. No terms acceptance, commercial permission or legal clearance is performed for you.
  • Use the exact complete August 2024 R+ derivative, with both pinned split files in one directory. The frozen R+ canonical name/API is coherent despite its slug shorthand. This is not R, R7B, a partial shard or native FP32 setup.
  • Native raw files are gated in the captured access state. Public official metadata includes the exact native template, and the named derivative repository metadata and README are public. A download access error must stop the guide; resolve through the publisher without gate bypass.
  • Review this pinned runtime, public source and template before building. Private loopback/key does not grant commercial rights or create a public TLS/multiuser service. Use original non-sensitive non-commercial research text only.

Exact model and requirements

Artifact:
Bartowski (named split GGUF derivative); Cohere Labs (native model) / Complete Command R+ (08-2024) Q4_K_M by Bartowski, both shards · checkpoint bartowski/c4ai-command-r-plus-08-2024-GGUF
Publisher revision:
4cb2af9f9be9b2753915e67aa8d658cd031b8a21
Artifact digest:
No single publisher digest for the complete two-shard composition. Both individual LFS SHA256 digests are pinned and checked.
Download size:
58.44 GiB
Memory requirement (unknown):
Unknown — No complete process peak measured for both Q4_K_M shards, F16 attention cache, scratch, runtime and OS.
System RAM / disk:
Unknown / Unknown
Placement:
single device. One CPU host with one conversation slot. All model layers run on CPU; no GPU or disk-offload path is configured.
KV cache:
F16 K and V attention cache; actual process/cache allocation unmeasured.
Workload:
4,096 token context; Unknown; Unknown; concurrency 1; batch 1; cache unknown; repetitions Unknown.
Tokenizer:
Exact named R+ derivative tokenizer and independently pinned native R+ default template · GGUF derivative pin and native template pin; full revisions in download steps
Sampling / reasoning:
Temperature 0.3 follows the actual native R+ August model-card example. Top_k 0, top_p 1, min_p 0 and repeat_penalty 1 are explicit author choices. Native END_OF_TURN stop and 512 output cap; no R7B response markers. Ordinary alternating user/assistant conversation uses the exact 1,255-byte native R+ default template. It emits one BOS and assistant CHATBOT prefix without START_RESPONSE. Both complete GGUF shards are required; native loader discovers the second from the first split filename. Tool/RAG/citation workflows and full 128K context remain separately unqualified.
Runtime prerequisites:
Ubuntu 24.04 x86_64; See prerequisites above.

Official artifact · License

The selected named GGUF and native metadata declare CC BY-NC 4.0. The actual publisher license incorporates the Cohere Labs Acceptable Use Addendum and policy. NonCommercial means not primarily intended for commercial advantage or monetary compensation; private or paid-VM use is not an exemption. Retain required attribution, license/disclaimer/source notices and indicate modifications when sharing; do not impose additional restrictions on licensed rights. The incorporated policy prohibits specified harmful/illegal/privacy/deceptive uses and synthetic data outputs for commercial purposes, including model or product development. Read all full terms and assess your own intended use before downloading. No terms acceptance, commercial permission or legal clearance is performed for you.

  • Both complete Q4_K_M shards total 62,750,608,416 bytes. Native metadata reports 103,810,674,688 F16 parameters and a 104B model-card label. The first shard alone is not the complete model.
  • 128 GiB RAM and 160 GiB disk are allocations; local eight threads and cloud sixteen vCPUs are explicit selections. Full fit, cache/loading peak and CPU speed remain unknown. Native FP32 weights would require a separate much larger-host configuration; that path is not claimed.

One-time setup and hardware

hardware
Unknown — Existing desktop purchase price and incremental hardware cost depend on the reader; unknown.
Existing desktop purchase price and incremental hardware cost depend on the reader; unknown. Tax: unknown.
setup
Unknown — Initial provisioning/build time and labor cost are unknown.
Initial provisioning/build time and labor cost are unknown. Tax: unknown.

Recurring costs

electricity
Unknown — Actual wall power, electricity rate and powered hours are unknown; no TDP-to-wall-power conversion.
Actual wall power, electricity rate and powered hours are unknown; no TDP-to-wall-power conversion. Tax: unknown.
storage
Unknown — Incremental cost of local storage is unknown. 160 GiB is an author planning allocation.
Incremental cost of local storage is unknown. 160 GiB is an author planning allocation. Tax: unknown.
egress
Unknown — Data transfer price, allowances and traffic volume are unknown.
Data transfer price, allowances and traffic volume are unknown. Tax: unknown.
administration
Unknown — Maintenance labor rate and hours are unknown.
Maintenance labor rate and hours are unknown. Tax: unknown.

Install the runtime

  1. 1. Build the exact CPU runtime

    Install host build dependencies and compile the pinned official source. No CUDA driver is required. Build and run natively on this same CPU; save resolved package/tool versions and build logs during actual execution.

    Command
    set -e
    sudo apt-get update
    sudo apt-get install -y build-essential cmake git curl ca-certificates openssl python3
    mkdir -p "$HOME/command-rplus0824-hosting/models"
    cd "$HOME/command-rplus0824-hosting"
    git clone https://github.com/ggml-org/llama.cpp.git
    git -C llama.cpp checkout --detach 620d2225cc436ab0b001e3200e590e3b286ef9ab
    cmake -S llama.cpp -B llama.cpp/build -DCMAKE_BUILD_TYPE=Release -DGGML_METAL=OFF -DGGML_NATIVE=ON
    cmake --build llama.cpp/build --config Release -j 4
    ./llama.cpp/build/bin/llama-server --version

    Expected result: Checkout and build succeed; server version identifies the pinned source. Stop on failure. No inference has been executed by the author.

Download the model

  1. 1. Download and verify both complete R+ shards and native template

    Read the full terms first. Both exact split files must remain together; each byte count and SHA256 is checked fail-fast before template extraction. Native metadata is checked by canonical model/revision and exact template hash, without binding mutable counters. No shard merging, requantization, conversion or template rewriting is performed.

    Command
    set -e
    cd "$HOME/command-rplus0824-hosting"
    curl --fail --location --retry 0 'https://huggingface.co/bartowski/c4ai-command-r-plus-08-2024-GGUF/resolve/4cb2af9f9be9b2753915e67aa8d658cd031b8a21/c4ai-command-r-plus-08-2024-Q4_K_M/c4ai-command-r-plus-08-2024-Q4_K_M-00001-of-00002.gguf' -o 'models/c4ai-command-r-plus-08-2024-Q4_K_M-00001-of-00002.gguf'
    echo '8c6a3ecc11e4441cdcc71ffca0c26d49b0f34d0c3aacf38c8b8fb0ce22ebcdc3  models/c4ai-command-r-plus-08-2024-Q4_K_M-00001-of-00002.gguf' | sha256sum --check
    test "$(stat -c %s 'models/c4ai-command-r-plus-08-2024-Q4_K_M-00001-of-00002.gguf')" = 39970263520
    curl --fail --location --retry 0 'https://huggingface.co/bartowski/c4ai-command-r-plus-08-2024-GGUF/resolve/4cb2af9f9be9b2753915e67aa8d658cd031b8a21/c4ai-command-r-plus-08-2024-Q4_K_M/c4ai-command-r-plus-08-2024-Q4_K_M-00002-of-00002.gguf' -o 'models/c4ai-command-r-plus-08-2024-Q4_K_M-00002-of-00002.gguf'
    echo '5c920b5d6342e8e746019529c056c8c3d30a5b4e4cd087b6620266722a542a2a  models/c4ai-command-r-plus-08-2024-Q4_K_M-00002-of-00002.gguf' | sha256sum --check
    test "$(stat -c %s 'models/c4ai-command-r-plus-08-2024-Q4_K_M-00002-of-00002.gguf')" = 22780344896
    curl --fail --location 'https://huggingface.co/api/models/CohereLabs/c4ai-command-r-plus-08-2024/revision/e808c1a2249354ca211c9f08d1338e5039f633f8?blobs=true' -o models/native-metadata.json
    python3 - <<'PYTEMPLATE'
    import hashlib,json,pathlib
    d=json.loads(pathlib.Path('models/native-metadata.json').read_text())
    assert d['id']=='CohereLabs/c4ai-command-r-plus-08-2024' and d['sha']=='e808c1a2249354ca211c9f08d1338e5039f633f8'
    t=next(x['template'] for x in d['config']['tokenizer_config']['chat_template'] if x['name']=='default')
    b=t.encode('utf-8');assert len(b)==1255 and hashlib.sha256(b).hexdigest()=='469770c7e90472c46cfbd24a081f81e8bc4d99add8e47bc6f61bf44e9cceba88'
    pathlib.Path('models/command-default.jinja').write_bytes(b)
    print('Exact native R+ template and both split files verified')
    PYTEMPLATE

    Expected result: Both shard byte/checksum checks and exact 1,255-byte native template checks pass. Stop on any mismatch, missing shard or access error.

Configure

  1. 1. Create a private service credential

    Generate a local server password on your own host when following this guide. Preserve an existing key on repeat setup and never print or share it. This is not an provider API key.

    Command
    set -e
    cd "$HOME/command-rplus0824-hosting"
    umask 077
    if [ ! -e .api-key ]; then
      openssl rand -hex 32 > .api-key
    fi
    test -s .api-key || { echo 'Restore the empty service-key file before continuing.'; exit 1; }
    chmod 600 .api-key

    Expected result: A nonempty private .api-key exists with mode 600. Existing key preserved; no secret printed.

Start the model

  1. 1. Start the complete private R+ CPU backend

    Run in the foreground. Point the native loader at the first exact split filename; its pinned implementation discovers and validates all split files, and a missing split must fail. One slot and 4,096 total context tokens include the complete prompt and up to 512 output tokens. Stop on architecture, shard or template failure.

    Command
    set -e
    cd "$HOME/command-rplus0824-hosting"
    COMMAND_SERVICE_KEY="$(cat .api-key)"
    test -n "$COMMAND_SERVICE_KEY"
    export COMMAND_SERVICE_KEY
    ./llama.cpp/build/bin/llama-server -m models/c4ai-command-r-plus-08-2024-Q4_K_M-00001-of-00002.gguf --alias command-rplus0824 --host 127.0.0.1 --port 8080 --api-key "$COMMAND_SERVICE_KEY" --device none -ngl 0 -t 8 -c 4096 -np 1 --cache-type-k f16 --cache-type-v f16 --jinja --chat-template-file models/command-default.jinja --skip-chat-parsing --reasoning-format none --temp 0.3 --top-k 0 --top-p 1 --min-p 0 --repeat-penalty 1

    Expected result: The complete native R+ model loads from both split files and serves loopback. No successful model load, fit, startup time or throughput is preclaimed.

Connect to your endpoint

http://127.0.0.1:8080/completion

Trusted desktop loopback only; checks run in a second local terminal.

Access: loopback. Reader-generated private Bearer key protects native template, tokenization and completion routes. Native health is public on loopback. No Cohere provider API credential or paid inference API is used.

Verify the setup

  1. 1. Check a complete native non-commercial conversation

    Use a second terminal or SSH session on this host. The original library-catalog question and one-sentence follow-up test native conversation formatting and normal completion. Inspect both actual answers; protocol success does not establish correctness or quality. Client timeout does not cancel native generation.

    Command
    set -e
    cd "$HOME/command-rplus0824-hosting"
    cat > chat-client.py <<'PYCLIENT'
    """Reader-run native Command R+ August 2024 ordinary text conversation check."""
    import json,pathlib,urllib.request
    
    def check_messages(messages):
        if not isinstance(messages,list) or not messages or len(messages)%2!=1: raise ValueError('user_ending_conversation_required')
        for i,m in enumerate(messages):
            if not isinstance(m,dict) or set(m)!={'role','content'} or m['role']!=('user' if i%2==0 else 'assistant') or not isinstance(m['content'],str) or not m['content'].strip() or len(m['content'].encode())>8192 or '<|' in m['content'] or '<BOS_TOKEN>' in m['content']:
                raise ValueError('invalid_plain_text_conversation')
    
    def run_case(messages,post):
        check_messages(messages)
        prompt=post('/apply-template',{'messages':messages})['prompt']
        if not isinstance(prompt,str) or not prompt.startswith('<BOS_TOKEN>') or prompt.count('<BOS_TOKEN>')!=1 or not prompt.endswith('<|START_OF_TURN_TOKEN|><|CHATBOT_TOKEN|>'):
            raise ValueError('native_template_mismatch')
        ids=post('/tokenize',{'content':prompt,'add_special':False,'parse_special':True})['tokens']
        if not isinstance(ids,list) or not ids or any(type(i)!=int or i<0 for i in ids) or len(ids)>3584: raise ValueError('prompt_budget_or_token_shape')
        result=post('/completion',{'prompt':ids,'n_predict':512,'temperature':0.3,'top_k':0,'top_p':1.0,'min_p':0.0,'repeat_penalty':1.0,'stop':['<|END_OF_TURN_TOKEN|>'],'return_tokens':True,'cache_prompt':False})
        if result.get('stop_type') not in ('eos','word') or result.get('truncated') is not False: raise ValueError('unfinished_or_truncated_response')
        tokens=result.get('tokens');text=result.get('content')
        if not isinstance(tokens,list) or not 1<=len(tokens)<=512 or any(type(i)!=int or i<0 for i in tokens) or not isinstance(text,str) or not text.strip() or '<|' in text: raise ValueError('response_shape')
        return {'prompt_tokens':len(ids),'generated_tokens':len(tokens),'response':text}
    
    def main():
        key=pathlib.Path('.api-key').read_text().strip()
        def post(path,data):
            req=urllib.request.Request('http://127.0.0.1:8080'+path,json.dumps(data).encode(),headers={'Authorization':'Bearer '+key,'Content-Type':'application/json'})
            with urllib.request.urlopen(req,timeout=600) as response:return json.load(response)
        first=[{'role':'user','content':'Explain in two short sentences why a library catalog helps a reader find a book.'}]
        answer=run_case(first,post);print(json.dumps(answer,ensure_ascii=False))
        follow=first+[{'role':'assistant','content':answer['response']},{'role':'user','content':'Summarize your explanation in one sentence.'}]
        print(json.dumps(run_case(follow,post),ensure_ascii=False))
        print('Inspect both answers for relevance and coherent follow-up. Syntax and stop checks do not establish correctness or quality.')
    if __name__=='__main__':main()
    PYCLIENT
    python3 chat-client.py
    code=$(curl -sS -o unauthorized.json -w '%{http_code}' -H 'Content-Type: application/json' --data '{"content":"test"}' http://127.0.0.1:8080/tokenize)
    test "$code" = 401

    Expected result: Two actual nonempty responses with counted prompts and normal stops; unauthenticated tokenization returns 401. Human records relevance and coherent follow-up without a forced gold answer.

Performance evidence

No compatible measurement available. Documented support and estimated memory do not establish response speed.

Limits and troubleshooting

  • Documented source-qualified setup only; no weight body, build, model load, inference, memory fit, CPU throughput or answer quality was measured.
  • The selected named GGUF and native metadata declare CC BY-NC 4.0. The actual publisher license incorporates the Cohere Labs Acceptable Use Addendum and policy. NonCommercial means not primarily intended for commercial advantage or monetary compensation; private or paid-VM use is not an exemption. Retain required attribution, license/disclaimer/source notices and indicate modifications when sharing; do not impose additional restrictions on licensed rights. The incorporated policy prohibits specified harmful/illegal/privacy/deceptive uses and synthetic data outputs for commercial purposes, including model or product development. Read all full terms and assess your own intended use before downloading. No terms acceptance, commercial permission or legal clearance is performed for you.
  • This frozen canonical is Command R+ (08-2024), API cohere/command-r-plus-08-2024, distinct from frozen R August and R7B. Native public model card labels 104B, metadata reports 103,810,674,688 F16 parameters; raw gated config dimensions are not invented.
  • The complete derivative consists of both exact split GGUF files totaling 62,750,608,416 bytes. Both have individual hashes; no whole-composition digest is invented. Native loader source supports split discovery from the first filename and fails for missing/mismatched splits.
  • The native R+ default template is independently pinned at 1,255 UTF-8 bytes. It emits one BOS and assistant CHATBOT prefix, without R7B START_RESPONSE markers. Tool/RAG/citations remain separately unqualified.
  • The Bartowski README identifies the native R+ repository and llama.cpp b3634 imatrix quantization, but not its input base commit. Native template and derivative are independent pins requiring actual functional checks, not byte-equivalence claims.
  • 4,096 total context and a 512-token output cap are author choices. Native 128K support does not prove fit. F16 cache, runtime/scratch/loading and OS add memory beyond the complete weight file sizes.
  • 128 GiB RAM/160 GiB disk are planning allocations. Verify actual local board/DIMM/OS capacity; the exact R7i.4xlarge source states sixteen vCPUs and 128 GiB. No measured fit, peak, speed or quality result exists.
  • The private endpoint and paid cloud rental do not exempt NC/AUP terms or create public TLS/multiuser resilience. Native full precision, GPU, long-context and other useful R+ scopes remain open; required total remains null.
Access error or license uncertainty
Stop and resolve the exact publisher/derivative access and full terms. Do not bypass a gate, create a new agent credential or assume private hosting or VM payment grants commercial model rights.
Native template, BOS or architecture mismatch
Verify exact runtime, complete derivative digest and native template extraction. Do not substitute R7B response markers, a generic template or extra BOS.
Prompt overflow or partial response
Shorten the complete conversation within the 3,584-token prompt budget. Limit stop or truncation fails the functional check. A changed context/output budget requires requalification.
401 or connection refused
Check foreground readiness, matching private key and same-host loopback or correctly established SSH tunnel. Keep public port 8080 closed.
OOM, slow or poor response
Stop and record actual process memory/resources and answers. Planning allocation, artifact size or normal stop do not prove fit, speed or quality.

Stop the model

  1. 1. Stop the CPU backend

    Press Ctrl+C in the foreground server terminal. Unset the private key in each shell and close any SSH tunnel. Verify loopback port 8080 closes.

    Command
    unset COMMAND_SERVICE_KEY

    Expected result: The backend stops serving loopback port 8080.

Uninstall

  1. 1. Remove the dedicated walkthrough files

    Back up wanted outputs, confirm the exact path and remove only this dedicated directory. Shared system packages remain.

    Command
    rm -r -- "$HOME/command-rplus0824-hosting"

    Expected result: Dedicated complete weights, build, native metadata/template, client, private key and outputs removed.

Sources and verification

Sources checked Oct 16, 2026. Verification source

Compare this configuration
Cloud serverDocumented setupSources checked Oct 16, 2026

Run complete Command R+ (08-2024) Q4_K_M on a private CPU VM

Load both exact Bartowski Q4_K_M shards for the complete Command R+ (08-2024) model and its independently pinned native ordinary-chat template. The private non-commercial CPU walkthrough uses one sequence, 4,096 total context tokens and a 512-token output cap. The 128 GiB host allocation is planning headroom; full fit, speed and answer quality remain unmeasured.

Hardware
AWS r7i.4xlarge CPU, 16 vCPU, 128 GiB RAM
Runtime
llama.cpp v0.7.0 (620d2225; full pin in source URL) · CPU
Model format
GGUF · Complete two-shard Q4_K_M mixed GGUF; no runtime quantization or native FP32 claim · Complete two-shard Q4_K_M mixed GGUF quantization; not native FP32
Workload
4,096 token context · 1 concurrent

Based on source documentation; this setup has not been executed by OpenTools. Memory: unknown. No compatible measurement available.

Read the complete setup guide

Before you start

  • Use an owned AWS r7i.4xlarge Ubuntu 24.04 x86_64 host in us-east-1 with sixteen vCPUs, 128 GiB RAM and a 160 GiB gp3 disk. Its dated quote is preserved; capacity and fit are unknown. Restrict SSH and keep public port 8080 closed.
  • The selected named GGUF and native metadata declare CC BY-NC 4.0. The actual publisher license incorporates the Cohere Labs Acceptable Use Addendum and policy. NonCommercial means not primarily intended for commercial advantage or monetary compensation; private or paid-VM use is not an exemption. Retain required attribution, license/disclaimer/source notices and indicate modifications when sharing; do not impose additional restrictions on licensed rights. The incorporated policy prohibits specified harmful/illegal/privacy/deceptive uses and synthetic data outputs for commercial purposes, including model or product development. Read all full terms and assess your own intended use before downloading. No terms acceptance, commercial permission or legal clearance is performed for you.
  • Use the exact complete August 2024 R+ derivative, with both pinned split files in one directory. The frozen R+ canonical name/API is coherent despite its slug shorthand. This is not R, R7B, a partial shard or native FP32 setup.
  • Native raw files are gated in the captured access state. Public official metadata includes the exact native template, and the named derivative repository metadata and README are public. A download access error must stop the guide; resolve through the publisher without gate bypass.
  • Review this pinned runtime, public source and template before building. Private loopback/key does not grant commercial rights or create a public TLS/multiuser service. Use original non-sensitive non-commercial research text only.

Exact model and requirements

Artifact:
Bartowski (named split GGUF derivative); Cohere Labs (native model) / Complete Command R+ (08-2024) Q4_K_M by Bartowski, both shards · checkpoint bartowski/c4ai-command-r-plus-08-2024-GGUF
Publisher revision:
4cb2af9f9be9b2753915e67aa8d658cd031b8a21
Artifact digest:
No single publisher digest for the complete two-shard composition. Both individual LFS SHA256 digests are pinned and checked.
Download size:
58.44 GiB
Memory requirement (unknown):
Unknown — No complete process peak measured for both Q4_K_M shards, F16 attention cache, scratch, runtime and OS.
System RAM / disk:
Unknown / Unknown
Placement:
single device. One CPU host with one conversation slot. All model layers run on CPU; no GPU or disk-offload path is configured.
KV cache:
F16 K and V attention cache; actual process/cache allocation unmeasured.
Workload:
4,096 token context; Unknown; Unknown; concurrency 1; batch 1; cache unknown; repetitions Unknown.
Tokenizer:
Exact named R+ derivative tokenizer and independently pinned native R+ default template · GGUF derivative pin and native template pin; full revisions in download steps
Sampling / reasoning:
Temperature 0.3 follows the actual native R+ August model-card example. Top_k 0, top_p 1, min_p 0 and repeat_penalty 1 are explicit author choices. Native END_OF_TURN stop and 512 output cap; no R7B response markers. Ordinary alternating user/assistant conversation uses the exact 1,255-byte native R+ default template. It emits one BOS and assistant CHATBOT prefix without START_RESPONSE. Both complete GGUF shards are required; native loader discovers the second from the first split filename. Tool/RAG/citation workflows and full 128K context remain separately unqualified.
Runtime prerequisites:
Ubuntu 24.04 x86_64; See prerequisites above.

Official artifact · License

The selected named GGUF and native metadata declare CC BY-NC 4.0. The actual publisher license incorporates the Cohere Labs Acceptable Use Addendum and policy. NonCommercial means not primarily intended for commercial advantage or monetary compensation; private or paid-VM use is not an exemption. Retain required attribution, license/disclaimer/source notices and indicate modifications when sharing; do not impose additional restrictions on licensed rights. The incorporated policy prohibits specified harmful/illegal/privacy/deceptive uses and synthetic data outputs for commercial purposes, including model or product development. Read all full terms and assess your own intended use before downloading. No terms acceptance, commercial permission or legal clearance is performed for you.

  • Both complete Q4_K_M shards total 62,750,608,416 bytes. Native metadata reports 103,810,674,688 F16 parameters and a 104B model-card label. The first shard alone is not the complete model.
  • 128 GiB RAM and 160 GiB disk are allocations; local eight threads and cloud sixteen vCPUs are explicit selections. Full fit, cache/loading peak and CPU speed remain unknown. Native FP32 weights would require a separate much larger-host configuration; that path is not claimed.

One-time setup and hardware

hardware
Not applicable — AWS hardware acquisition is included in compute rental; no purchased GPU required. Any separate hardware cost is not applicable.
AWS hardware acquisition is included in compute rental; no purchased GPU required. Any separate hardware cost is not applicable. Tax: unknown.
setup
Unknown — Initial provisioning/build time and labor cost are unknown.
Initial provisioning/build time and labor cost are unknown. Tax: unknown.

Recurring costs

compute
$1.06 / hour
Exact original AWS feed quote USD 1.0584 per billed Linux instance-hour in us-east-1. Eight hours USD 8.4672; 24 hours USD 25.4016 compute. Idle running hours bill; no discount or reservation. Storage, egress, tax and administration additional; current capacity unknown. Region: us-east-1. SKU: r7i.4xlarge Linux On-Demand. Tax: excluded. Price dated Oct 15, 2026. Price source
storage
$0.08 / GB month
Captured us-east-1 gp3 quote USD 0.08 per GB-month, with GB defined as 1024^3 bytes. Selected 160 GiB root volume costs USD 12.80 per full month, prorated by provisioned duration, baseline 3000 IOPS and 125 MB/s. Retained snapshots/resources separate; storage persists after stop; tax excluded. Region: us-east-1. SKU: EBS gp3 baseline 3000 IOPS / 125 MB/s. Tax: excluded. Price dated Oct 16, 2026. Price source
egress
Unknown — Data transfer price, allowances and traffic volume are unknown.
Data transfer price, allowances and traffic volume are unknown. Tax: unknown.
administration
Unknown — Maintenance labor rate and hours are unknown.
Maintenance labor rate and hours are unknown. Tax: unknown.

Install the runtime

  1. 1. Build the exact CPU runtime

    Install host build dependencies and compile the pinned official source. No CUDA driver is required. Build and run natively on this same CPU; save resolved package/tool versions and build logs during actual execution.

    Command
    set -e
    sudo apt-get update
    sudo apt-get install -y build-essential cmake git curl ca-certificates openssl python3
    mkdir -p "$HOME/command-rplus0824-hosting/models"
    cd "$HOME/command-rplus0824-hosting"
    git clone https://github.com/ggml-org/llama.cpp.git
    git -C llama.cpp checkout --detach 620d2225cc436ab0b001e3200e590e3b286ef9ab
    cmake -S llama.cpp -B llama.cpp/build -DCMAKE_BUILD_TYPE=Release -DGGML_METAL=OFF -DGGML_NATIVE=ON
    cmake --build llama.cpp/build --config Release -j 4
    ./llama.cpp/build/bin/llama-server --version

    Expected result: Checkout and build succeed; server version identifies the pinned source. Stop on failure. No inference has been executed by the author.

Download the model

  1. 1. Download and verify both complete R+ shards and native template

    Read the full terms first. Both exact split files must remain together; each byte count and SHA256 is checked fail-fast before template extraction. Native metadata is checked by canonical model/revision and exact template hash, without binding mutable counters. No shard merging, requantization, conversion or template rewriting is performed.

    Command
    set -e
    cd "$HOME/command-rplus0824-hosting"
    curl --fail --location --retry 0 'https://huggingface.co/bartowski/c4ai-command-r-plus-08-2024-GGUF/resolve/4cb2af9f9be9b2753915e67aa8d658cd031b8a21/c4ai-command-r-plus-08-2024-Q4_K_M/c4ai-command-r-plus-08-2024-Q4_K_M-00001-of-00002.gguf' -o 'models/c4ai-command-r-plus-08-2024-Q4_K_M-00001-of-00002.gguf'
    echo '8c6a3ecc11e4441cdcc71ffca0c26d49b0f34d0c3aacf38c8b8fb0ce22ebcdc3  models/c4ai-command-r-plus-08-2024-Q4_K_M-00001-of-00002.gguf' | sha256sum --check
    test "$(stat -c %s 'models/c4ai-command-r-plus-08-2024-Q4_K_M-00001-of-00002.gguf')" = 39970263520
    curl --fail --location --retry 0 'https://huggingface.co/bartowski/c4ai-command-r-plus-08-2024-GGUF/resolve/4cb2af9f9be9b2753915e67aa8d658cd031b8a21/c4ai-command-r-plus-08-2024-Q4_K_M/c4ai-command-r-plus-08-2024-Q4_K_M-00002-of-00002.gguf' -o 'models/c4ai-command-r-plus-08-2024-Q4_K_M-00002-of-00002.gguf'
    echo '5c920b5d6342e8e746019529c056c8c3d30a5b4e4cd087b6620266722a542a2a  models/c4ai-command-r-plus-08-2024-Q4_K_M-00002-of-00002.gguf' | sha256sum --check
    test "$(stat -c %s 'models/c4ai-command-r-plus-08-2024-Q4_K_M-00002-of-00002.gguf')" = 22780344896
    curl --fail --location 'https://huggingface.co/api/models/CohereLabs/c4ai-command-r-plus-08-2024/revision/e808c1a2249354ca211c9f08d1338e5039f633f8?blobs=true' -o models/native-metadata.json
    python3 - <<'PYTEMPLATE'
    import hashlib,json,pathlib
    d=json.loads(pathlib.Path('models/native-metadata.json').read_text())
    assert d['id']=='CohereLabs/c4ai-command-r-plus-08-2024' and d['sha']=='e808c1a2249354ca211c9f08d1338e5039f633f8'
    t=next(x['template'] for x in d['config']['tokenizer_config']['chat_template'] if x['name']=='default')
    b=t.encode('utf-8');assert len(b)==1255 and hashlib.sha256(b).hexdigest()=='469770c7e90472c46cfbd24a081f81e8bc4d99add8e47bc6f61bf44e9cceba88'
    pathlib.Path('models/command-default.jinja').write_bytes(b)
    print('Exact native R+ template and both split files verified')
    PYTEMPLATE

    Expected result: Both shard byte/checksum checks and exact 1,255-byte native template checks pass. Stop on any mismatch, missing shard or access error.

Configure

  1. 1. Create a private service credential

    Generate a local server password on your own host when following this guide. Preserve an existing key on repeat setup and never print or share it. This is not an provider API key.

    Command
    set -e
    cd "$HOME/command-rplus0824-hosting"
    umask 077
    if [ ! -e .api-key ]; then
      openssl rand -hex 32 > .api-key
    fi
    test -s .api-key || { echo 'Restore the empty service-key file before continuing.'; exit 1; }
    chmod 600 .api-key

    Expected result: A nonempty private .api-key exists with mode 600. Existing key preserved; no secret printed.

  2. 2. Open an SSH tunnel from your client

    On your client replace the placeholders with an existing SSH key and this VM address. Keep the server bound to VM loopback; run verification in the SSH shell or forward localhost 8080 for your local client.

    Command
    set -e
    ssh -i /path/to/existing-key.pem -N -L 8080:127.0.0.1:8080 ubuntu@YOUR_INSTANCE_ADDRESS

    Expected result: Tunnel remains open while the SSH session runs. Client localhost:8080 reaches only the selected VM loopback service.

Start the model

  1. 1. Start the complete private R+ CPU backend

    Run in the foreground. Point the native loader at the first exact split filename; its pinned implementation discovers and validates all split files, and a missing split must fail. One slot and 4,096 total context tokens include the complete prompt and up to 512 output tokens. Stop on architecture, shard or template failure.

    Command
    set -e
    cd "$HOME/command-rplus0824-hosting"
    COMMAND_SERVICE_KEY="$(cat .api-key)"
    test -n "$COMMAND_SERVICE_KEY"
    export COMMAND_SERVICE_KEY
    ./llama.cpp/build/bin/llama-server -m models/c4ai-command-r-plus-08-2024-Q4_K_M-00001-of-00002.gguf --alias command-rplus0824 --host 127.0.0.1 --port 8080 --api-key "$COMMAND_SERVICE_KEY" --device none -ngl 0 -t 16 -c 4096 -np 1 --cache-type-k f16 --cache-type-v f16 --jinja --chat-template-file models/command-default.jinja --skip-chat-parsing --reasoning-format none --temp 0.3 --top-k 0 --top-p 1 --min-p 0 --repeat-penalty 1

    Expected result: The complete native R+ model loads from both split files and serves loopback. No successful model load, fit, startup time or throughput is preclaimed.

Connect to your endpoint

http://127.0.0.1:8080/completion

VM loopback only. Shown client checks run in a second SSH session using the VM private key. Optional laptop tunnel: ssh -N -L 8080:127.0.0.1:8080 USER@VM_IP; separately provide the matching key securely and keep public port 8080 closed.

Access: loopback. Reader-generated private Bearer key protects native template, tokenization and completion routes. Native health is public on loopback. No Cohere provider API credential or paid inference API is used.

Verify the setup

  1. 1. Check a complete native non-commercial conversation

    Use a second terminal or SSH session on this host. The original library-catalog question and one-sentence follow-up test native conversation formatting and normal completion. Inspect both actual answers; protocol success does not establish correctness or quality. Client timeout does not cancel native generation.

    Command
    set -e
    cd "$HOME/command-rplus0824-hosting"
    cat > chat-client.py <<'PYCLIENT'
    """Reader-run native Command R+ August 2024 ordinary text conversation check."""
    import json,pathlib,urllib.request
    
    def check_messages(messages):
        if not isinstance(messages,list) or not messages or len(messages)%2!=1: raise ValueError('user_ending_conversation_required')
        for i,m in enumerate(messages):
            if not isinstance(m,dict) or set(m)!={'role','content'} or m['role']!=('user' if i%2==0 else 'assistant') or not isinstance(m['content'],str) or not m['content'].strip() or len(m['content'].encode())>8192 or '<|' in m['content'] or '<BOS_TOKEN>' in m['content']:
                raise ValueError('invalid_plain_text_conversation')
    
    def run_case(messages,post):
        check_messages(messages)
        prompt=post('/apply-template',{'messages':messages})['prompt']
        if not isinstance(prompt,str) or not prompt.startswith('<BOS_TOKEN>') or prompt.count('<BOS_TOKEN>')!=1 or not prompt.endswith('<|START_OF_TURN_TOKEN|><|CHATBOT_TOKEN|>'):
            raise ValueError('native_template_mismatch')
        ids=post('/tokenize',{'content':prompt,'add_special':False,'parse_special':True})['tokens']
        if not isinstance(ids,list) or not ids or any(type(i)!=int or i<0 for i in ids) or len(ids)>3584: raise ValueError('prompt_budget_or_token_shape')
        result=post('/completion',{'prompt':ids,'n_predict':512,'temperature':0.3,'top_k':0,'top_p':1.0,'min_p':0.0,'repeat_penalty':1.0,'stop':['<|END_OF_TURN_TOKEN|>'],'return_tokens':True,'cache_prompt':False})
        if result.get('stop_type') not in ('eos','word') or result.get('truncated') is not False: raise ValueError('unfinished_or_truncated_response')
        tokens=result.get('tokens');text=result.get('content')
        if not isinstance(tokens,list) or not 1<=len(tokens)<=512 or any(type(i)!=int or i<0 for i in tokens) or not isinstance(text,str) or not text.strip() or '<|' in text: raise ValueError('response_shape')
        return {'prompt_tokens':len(ids),'generated_tokens':len(tokens),'response':text}
    
    def main():
        key=pathlib.Path('.api-key').read_text().strip()
        def post(path,data):
            req=urllib.request.Request('http://127.0.0.1:8080'+path,json.dumps(data).encode(),headers={'Authorization':'Bearer '+key,'Content-Type':'application/json'})
            with urllib.request.urlopen(req,timeout=600) as response:return json.load(response)
        first=[{'role':'user','content':'Explain in two short sentences why a library catalog helps a reader find a book.'}]
        answer=run_case(first,post);print(json.dumps(answer,ensure_ascii=False))
        follow=first+[{'role':'assistant','content':answer['response']},{'role':'user','content':'Summarize your explanation in one sentence.'}]
        print(json.dumps(run_case(follow,post),ensure_ascii=False))
        print('Inspect both answers for relevance and coherent follow-up. Syntax and stop checks do not establish correctness or quality.')
    if __name__=='__main__':main()
    PYCLIENT
    python3 chat-client.py
    code=$(curl -sS -o unauthorized.json -w '%{http_code}' -H 'Content-Type: application/json' --data '{"content":"test"}' http://127.0.0.1:8080/tokenize)
    test "$code" = 401

    Expected result: Two actual nonempty responses with counted prompts and normal stops; unauthenticated tokenization returns 401. Human records relevance and coherent follow-up without a forced gold answer.

Performance evidence

No compatible measurement available. Documented support and estimated memory do not establish response speed.

Limits and troubleshooting

  • Documented source-qualified setup only; no weight body, build, model load, inference, memory fit, CPU throughput or answer quality was measured.
  • The selected named GGUF and native metadata declare CC BY-NC 4.0. The actual publisher license incorporates the Cohere Labs Acceptable Use Addendum and policy. NonCommercial means not primarily intended for commercial advantage or monetary compensation; private or paid-VM use is not an exemption. Retain required attribution, license/disclaimer/source notices and indicate modifications when sharing; do not impose additional restrictions on licensed rights. The incorporated policy prohibits specified harmful/illegal/privacy/deceptive uses and synthetic data outputs for commercial purposes, including model or product development. Read all full terms and assess your own intended use before downloading. No terms acceptance, commercial permission or legal clearance is performed for you.
  • This frozen canonical is Command R+ (08-2024), API cohere/command-r-plus-08-2024, distinct from frozen R August and R7B. Native public model card labels 104B, metadata reports 103,810,674,688 F16 parameters; raw gated config dimensions are not invented.
  • The complete derivative consists of both exact split GGUF files totaling 62,750,608,416 bytes. Both have individual hashes; no whole-composition digest is invented. Native loader source supports split discovery from the first filename and fails for missing/mismatched splits.
  • The native R+ default template is independently pinned at 1,255 UTF-8 bytes. It emits one BOS and assistant CHATBOT prefix, without R7B START_RESPONSE markers. Tool/RAG/citations remain separately unqualified.
  • The Bartowski README identifies the native R+ repository and llama.cpp b3634 imatrix quantization, but not its input base commit. Native template and derivative are independent pins requiring actual functional checks, not byte-equivalence claims.
  • 4,096 total context and a 512-token output cap are author choices. Native 128K support does not prove fit. F16 cache, runtime/scratch/loading and OS add memory beyond the complete weight file sizes.
  • 128 GiB RAM/160 GiB disk are planning allocations. Verify actual local board/DIMM/OS capacity; the exact R7i.4xlarge source states sixteen vCPUs and 128 GiB. No measured fit, peak, speed or quality result exists.
  • The private endpoint and paid cloud rental do not exempt NC/AUP terms or create public TLS/multiuser resilience. Native full precision, GPU, long-context and other useful R+ scopes remain open; required total remains null.
Access error or license uncertainty
Stop and resolve the exact publisher/derivative access and full terms. Do not bypass a gate, create a new agent credential or assume private hosting or VM payment grants commercial model rights.
Native template, BOS or architecture mismatch
Verify exact runtime, complete derivative digest and native template extraction. Do not substitute R7B response markers, a generic template or extra BOS.
Prompt overflow or partial response
Shorten the complete conversation within the 3,584-token prompt budget. Limit stop or truncation fails the functional check. A changed context/output budget requires requalification.
401 or connection refused
Check foreground readiness, matching private key and same-host loopback or correctly established SSH tunnel. Keep public port 8080 closed.
OOM, slow or poor response
Stop and record actual process memory/resources and answers. Planning allocation, artifact size or normal stop do not prove fit, speed or quality.

Stop the model

  1. 1. Stop the CPU backend

    Press Ctrl+C in the foreground server terminal. Unset the private key in each shell and close any SSH tunnel. This does not stop compute or storage billing.

    Command
    unset COMMAND_SERVICE_KEY

    Expected result: The backend stops serving loopback port 8080.

Uninstall

  1. 1. Remove the dedicated walkthrough files

    Back up wanted outputs, confirm the exact path and remove only this dedicated directory. Shared system packages remain.

    Command
    rm -r -- "$HOME/command-rplus0824-hosting"

    Expected result: Dedicated complete weights, build, native metadata/template, client, private key and outputs removed.

Shut down cloud resources

  1. 1. End cloud billing resources

    In EC2 us-east-1, stop for later reuse or terminate this exact VM. Review Delete on termination for its root volume. Delete unwanted detached EBS volumes, snapshots and reserved/Elastic/public IP resources. Stopped VM storage and retained resources may still bill. Check Bills/Cost Explorer later for final usage.

    Expected result: Exact instance is stopped/terminated as intended; no unwanted attached/retained billed resources remain. Instance compute stops only after its lifecycle transition, not when llama-server stops.

Sources and verification

Sources checked Oct 16, 2026. Verification source

Compare this configuration

Benchmarks

Performance scores for Command R+ (08-2024) across standard benchmarks.

MMLUOpenRouter · Jun 2024
76.3

Pricing

Token pricing for Command R+ (08-2024) API usage.

Input Tokens

$2.50/M

per million tokens

Output Tokens

$10.00/M

per million tokens

Competing Models

Same pricing tier — direct alternatives to Command R+ (08-2024)

Flagship
$2.50/M / $10.00/MCompare
$0.60/M / $6.00/MCompare
85
7.0
$4.00/M / $20.00/MCompare
78
11.1
$2.00/M / $12.00/MCompare
64
10.6
$2.00/M / $10.00/MCompare
50
11.1
$1.50/M / $7.50/MCompare
91
6.1
$5.00/M / $25.00/MCompare
81
9.0
$3.00/M / $15.00/MCompare
$2.00/M / $10.00/MCompare
$2.00/M / $10.00/MCompare
$2.00/M / $6.00/MCompare
Cohere logo
Cohereai lab

Own your AI

1 MCP Servers5 ModelsFounded 2019Toronto, Ontario, Canada
View full profile

AI Models by Cohere

AI models from the same organization.

ModelContext WindowPrice (In / Out per M)
North Mini CodeCurrent262KFree / Free
Command ACurrent256K$2.50 / $10.00
Command R7B (12-2024)Current128K$0.04 / $0.15
Command R (08-2024)Current128K$0.15 / $0.60

MCP Servers by Cohere

Connect this tool to AI assistants via the Model Context Protocol.

Related News

Latest coverage and updates.