ข้ามไปที่เนื้อหา

การติดตั้ง

OpenJarvis รันบนฮาร์ดแวร์ของคุณทั้งหมด เลือก interface ที่เหมาะกับเวิร์กโฟลว์ของคุณ


แอปในเบราว์เซอร์

รัน UI แชทแบบเต็มรูปแบบในเบราว์เซอร์ของคุณ ทุกอย่างอยู่ในเครื่อง — backend รันบน เครื่องของคุณ และ frontend เชื่อมต่อผ่าน localhost

ตั้งค่าด้วยคำสั่งเดียว

git clone https://github.com/open-jarvis/OpenJarvis.git
cd OpenJarvis
./scripts/quickstart.sh

สคริปต์นี้จัดการทุกอย่างให้:

  1. ตรวจสอบ Python 3.10+ และ Node.js 18+
  2. ติดตั้ง Ollama หากยังไม่มี และดึงโมเดลเริ่มต้น
  3. ติดตั้ง dependency ของ Python และ frontend
  4. เริ่มเซิร์ฟเวอร์ API ฝั่ง backend และ dev server ฝั่ง frontend
  5. เปิด http://localhost:5173 ในเบราว์เซอร์ของคุณ

ตั้งค่าด้วยตนเอง

หากคุณต้องการรันแต่ละขั้นตอนด้วยตนเอง:

git clone https://github.com/open-jarvis/OpenJarvis.git
cd OpenJarvis
uv sync --extra desktop
uv run maturin develop -m rust/crates/openjarvis-python/Cargo.toml
cd frontend && npm install && cd ..

สิ่งที่ต้องมีก่อน

ต้องมี Rust (curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh) บน Python 3.14+ ให้ตั้งค่า PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1 ก่อนรันคำสั่ง maturin

# Install from https://ollama.com if not already installed
ollama serve &
ollama pull qwen3:0.6b
uv run jarvis serve --port 8000
cd frontend
npm run dev

จากนั้นเปิด http://localhost:5173


แอปเดสก์ท็อป

แอปเดสก์ท็อปคือหน้าต่างเนทีฟสำหรับ UI แชทของ OpenJarvis การอนุมานและการประมวลผลฝั่ง backend ทั้งหมดเกิดขึ้นบนเครื่องของคุณเอง — แอปจะเชื่อมต่อกับ backend ที่คุณเริ่มไว้ในเครื่อง

การตั้งค่า

ขั้นตอนที่ 1. เริ่ม backend (เหมือนกับแอปในเบราว์เซอร์):

git clone https://github.com/open-jarvis/OpenJarvis.git
cd OpenJarvis
./scripts/quickstart.sh

ขั้นตอนที่ 2. ดาวน์โหลดและเปิดแอปเดสก์ท็อป:

แพลตฟอร์ม ดาวน์โหลด
macOS (Universal) OpenJarvis.dmg
Windows (64-bit) OpenJarvis-setup.exe
Linux (DEB) OpenJarvis.deb
Linux (RPM) OpenJarvis.rpm
Linux (AppImage) OpenJarvis.AppImage

แอปจะเชื่อมต่อ http://localhost:8000 โดยอัตโนมัติ

macOS: \"app is damaged\"

หาก macOS แจ้งว่าแอปเสียหาย ให้ล้าง flag กักกันของ Gatekeeper:

xattr -cr /Applications/OpenJarvis.app
เป็นเรื่องปกติสำหรับแอป open-source ที่แจกจ่ายนอก App Store

ทุก Release

ดูทุกเวอร์ชันได้ที่หน้า GitHub Releases

Build จาก Source

git clone https://github.com/open-jarvis/OpenJarvis.git
cd OpenJarvis/desktop
npm install
npm run tauri build

ตัวติดตั้งที่ build เสร็จจะอยู่ที่ frontend/src-tauri/target/release/bundle/


CLI

Command-line interface คือวิธีที่เร็วที่สุดในการโต้ตอบกับ OpenJarvis แบบเชิงโปรแกรม ทุกฟีเจอร์เข้าถึงได้จากเทอร์มินัล

ติดตั้ง

git clone https://github.com/open-jarvis/OpenJarvis.git
cd OpenJarvis
uv sync
uv run maturin develop -m rust/crates/openjarvis-python/Cargo.toml

ต้องมี Rust บน Python 3.14+ ให้ตั้งค่า PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1 ก่อนรันคำสั่ง maturin

ตรวจสอบ

jarvis --version
# jarvis, version 0.1.0

คำสั่งแรกๆ

jarvis ask "What is the capital of France?"

jarvis ask --agent orchestrator --tools calculator "What is 137 * 42?"

jarvis serve --port 8000

jarvis doctor

jarvis model list

jarvis chat

ต้องมี Inference Backend

CLI ต้องการ inference backend ที่กำลังรันอยู่ (เช่น Ollama) ดู การตั้งค่า inference backend ด้านล่าง


Python SDK

สำหรับการเข้าถึงเชิงโปรแกรม คลาส Jarvis มี API แบบ sync ระดับสูงให้ใช้งาน

ติดตั้ง

git clone https://github.com/open-jarvis/OpenJarvis.git
cd OpenJarvis
uv sync
uv run maturin develop -m rust/crates/openjarvis-python/Cargo.toml

ต้องมี Rust บน Python 3.14+ ให้ตั้งค่า PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1 ก่อนรันคำสั่ง maturin

ตัวอย่างเบื้องต้น

from openjarvis import Jarvis

j = Jarvis()
print(j.ask("Explain quicksort in two sentences."))
j.close()

ใช้ร่วมกับ Agent และ Tools

result = j.ask_full(
    "What is the square root of 144?",
    agent="orchestrator",
    tools=["calculator", "think"],
)
print(result["content"])       # "12"
print(result["tool_results"])  # tool invocations
print(result["turns"])         # number of agent turns

เลเยอร์การประกอบระบบ (Composition Layer)

หากต้องการควบคุมแบบเต็มรูปแบบ ใช้ SystemBuilder:

from openjarvis import SystemBuilder

system = (
    SystemBuilder()
    .engine("ollama")
    .model("qwen3:8b")
    .agent("orchestrator")
    .tools(["calculator", "web_search", "file_read"])
    .enable_telemetry()
    .enable_traces()
    .build()
)

result = system.ask("Summarize the latest AI news.")
system.close()

ดู คู่มือ Python SDK สำหรับเอกสารอ้างอิง API แบบเต็ม


ข้อกำหนดของระบบ

สิ่งที่ต้องมี เวอร์ชัน ติดตั้ง หมายเหตุ
Python 3.10–3.13 python.org จำเป็น ยังไม่รองรับ 3.14+ (dependency หลักตัวหนึ่งยังไม่มี wheel สำหรับ 3.14)
uv เวอร์ชันล่าสุด curl -LsSf https://astral.sh/uv/install.sh \| sh หรือ brew install uv (macOS) ตัวจัดการแพ็กเกจและโปรเจกต์ของ Python
Git เวอร์ชันใดก็ได้ git-scm.com หรือ brew install git (macOS) จำเป็น
Rust stable curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs \| sh จำเป็นสำหรับ Rust extension
Inference backend เวอร์ชันใดก็ได้ ดู ด้านล่าง ต้องมีอย่างน้อยหนึ่งใน Ollama, vLLM, llama.cpp, SGLang หรือ cloud API
Node.js 18+ nodejs.org หรือ brew install node (macOS) จำเป็นสำหรับ browser UI; ต้องใช้ 22+ สำหรับ channel bridge ของ WhatsApp Baileys

สำหรับผู้ใช้ macOS

ดู คู่มือติดตั้งบน macOS สำหรับขั้นตอนแบบละเอียดครบถ้วน ครอบคลุม Homebrew, uv, Rust, llama.cpp และปัญหาที่พบบ่อย

Extra เสริม

OpenJarvis ใช้ extra เสริมเพื่อให้การติดตั้งพื้นฐานยังคงเบาอยู่

Inference Backend

Extra คำสั่งติดตั้ง คำอธิบาย
inference-cloud uv sync --extra inference-cloud API ของ OpenAI และ Anthropic
inference-google uv sync --extra inference-google Google Gemini API

Ollama, vLLM และ llama.cpp เป็นแบบ HTTP-based

engine เหล่านี้ไม่มี Python dependency เพิ่มเติม — OpenJarvis สื่อสารผ่าน HTTP คุณยังต้องรันซอฟต์แวร์ของ engine นั้นบนเครื่องของคุณเองอยู่ดี

Memory Backend

Extra คำสั่งติดตั้ง คำอธิบาย
memory-faiss uv sync --extra memory-faiss FAISS vector store
memory-colbert uv sync --extra memory-colbert ColBERTv2 late-interaction retrieval
memory-bm25 uv sync --extra memory-bm25 BM25 sparse retrieval

SQLite memory ใช้งานได้เสมอ

memory backend เริ่มต้นแบบ SQLite/FTS5 ไม่ต้องการ dependency เพิ่มเติมใดๆ

Server และอื่นๆ

Extra คำสั่งติดตั้ง คำอธิบาย
desktop uv sync --extra desktop เซิร์ฟเวอร์ Desktop/API พร้อมอินพุตเสียงในเครื่อง
server uv sync --extra server เซิร์ฟเวอร์ API ที่เข้ากันได้กับ OpenAI (jarvis serve)
dev uv sync --extra dev เครื่องมือพัฒนาและทดสอบ
docs uv sync --extra docs เครื่องมือ build เอกสาร

รวม extra หลายตัว:

uv sync --extra desktop --extra memory-faiss --extra inference-cloud

การตั้งค่า Inference Backend

OpenJarvis ต้องการ inference backend อย่างน้อยหนึ่งตัว เลือกตัวที่ตรงกับฮาร์ดแวร์ของคุณ

Ollama (แนะนำ)

วิธีที่ง่ายที่สุดในการเริ่มต้น จัดการการดาวน์โหลดและให้บริการโมเดลโดยอัตโนมัติ

  1. ติดตั้งจาก ollama.com
  2. เริ่มเซิร์ฟเวอร์และดึงโมเดล:

    ollama serve
    ollama pull qwen3:0.6b
    
  3. ตรวจสอบ: jarvis model list

เหมาะกับ: Mac ที่ใช้ Apple Silicon, GPU NVIDIA ระดับผู้ใช้ทั่วไป, ระบบที่มีแค่ CPU

vLLM

การให้บริการแบบ throughput สูง ที่ปรับแต่งมาสำหรับ GPU ระดับ datacenter

  1. ติดตั้งตาม คู่มืออย่างเป็นทางการ
  2. เริ่ม: vllm serve Qwen/Qwen2.5-7B-Instruct
  3. ตรวจจับอัตโนมัติที่ http://localhost:8000

เหมาะกับ: GPU NVIDIA ระดับ datacenter (A100, H100), GPU AMD

llama.cpp

การอนุมานที่มีประสิทธิภาพทั้งบน CPU และ GPU ด้วยโมเดล GGUF แบบ quantized

  1. Build จาก github.com/ggerganov/llama.cpp
  2. เริ่ม: llama-server -m /path/to/model.gguf --port 8080
  3. ตรวจจับอัตโนมัติที่ http://localhost:8080

Cloud API

uv sync --extra inference-cloud --extra inference-google
export OPENAI_API_KEY="sk-..."
export ANTHROPIC_API_KEY="sk-ant-..."

ขั้นตอนถัดไป

  • Quick Start — รันคำถามแรกของคุณ
  • Configuration — ปรับแต่ง engine host, การจัดเส้นทางโมเดล, memory และอื่นๆ