Continue
config.yamlのmodelsにこのモデルを追加します。
models:
- name: Twoody
provider: openai
model: Qwen3.5-9B-Q4_K_M
apiBase: http://127.0.0.1:47821/v1
apiKey: twk_…
Twoodyはあなたのパソコンで言語モデルを動かします。twoodyコマンドを使えばターミナルから実行でき、OpenAI互換のAPIを使えばプログラムからも利用できます。利用できるのはこのコンピュータ上だけで、キーが必要です。
npm install -g twoody
twoody pull Qwen3.5-9B-Q4_K_M
twoody run Qwen3.5-9B-Q4_K_M "この文章を3つのポイントにまとめて"
01
どの方法でインストールしても、同じコマンドです。
Node.js 22以降が動く環境ならどこでも:Mac、Windows、Linux。
npm install -g twoody
MacまたはLinuxでHomebrewを使います。Node.jsも一緒にインストールされます。
brew install osmove/twoody/twoody
Python向け:このパッケージは同じコマンドを起動します。Node.js 22以降が必要です。
pipx install twoody
コンテナでTwoody Serverだけを動かします。サーバー、NAS、Raspberry Pi向けです。APIはhttp://127.0.0.1:3000/v1で、このコンピュータのプログラムにだけ応答します。
docker run -d --init --name twoody -p 127.0.0.1:3000:3000 \
-e TWOODY_API_ALLOW_NETWORK=1 -v twoody:/data ghcr.io/osmove/twoody-server
docker exec twoody twoody-server models add Qwen3.5-4B-Q4_K_M
docker exec twoody twoody-server api-key create "my-script"
Twoodyで:設定 › 開発者 › twoodyコマンドをインストール。
twoody serveはこのコンピュータでTwoody Serverをhttp://127.0.0.1:3000で起動します。別のターミナルでtwoody api-key createを実行するとキーが作成されます。初回は、サーバーがデータフォルダに置いたセットアップトークンを使って、あなたをこのサーバーの所有者にもします。
twoody serve
twoody api-key create "my-script"
02
twoody listでこのコンピュータのモデルを表示し、twoody pullでTwoodyのカタログからモデルをインストールし、twoody runで一度だけ答えるか会話を続けます。パイプでテキストを渡すこともできます。
twoody list
twoody pull Qwen3.5-9B-Q4_K_M
twoody run Qwen3.5-9B-Q4_K_M "この文章を3つのポイントにまとめて"
cat notes.txt | twoody run Qwen3.5-9B-Q4_K_M "英語に翻訳して:"
twoody api-key create "my-script"
03
twoody api-key createまたは設定 › 開発者でキーを作成します。アドレスはTwoodyアプリならhttp://127.0.0.1:47821/v1、twoody serveならhttp://127.0.0.1:3000/v1です。/v1/models、/v1/chat/completions(ストリーミングあり・なし)、/v1/embeddingsに応答します。
/v1/models
このコンピュータにインストールされたモデル
/v1/chat/completions
回答(ストリーミングあり・なし)
/v1/embeddings
ベクトル(意味による検索のモデルがインストールされている場合)
curl http://127.0.0.1:47821/v1/chat/completions \
-H "Authorization: Bearer $TWOODY_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "Qwen3.5-9B-Q4_K_M", "messages": [{"role": "user", "content": "こんにちは"}]}'
Python(openaiパッケージ)
from openai import OpenAI
client = OpenAI(base_url="http://127.0.0.1:47821/v1", api_key="twk_…")
answer = client.chat.completions.create(
model="Qwen3.5-9B-Q4_K_M",
messages=[{"role": "user", "content": "こんにちは"}],
)
print(answer.choices[0].message.content)
JavaScript(openaiパッケージ)
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "http://127.0.0.1:47821/v1", apiKey: "twk_…" });
const answer = await client.chat.completions.create({
model: "Qwen3.5-9B-Q4_K_M",
messages: [{ role: "user", content: "こんにちは" }],
});
console.log(answer.choices[0].message.content);
04
OpenAI互換のアドレスを受け付けるツールなら、Twoodyのモデルを使えます。たとえば:
config.yamlのmodelsにこのモデルを追加します。
models:
- name: Twoody
provider: openai
model: Qwen3.5-9B-Q4_K_M
apiBase: http://127.0.0.1:47821/v1
apiKey: twk_…
Clineの設定でAPIプロバイダーにOpenAI Compatibleを選び、この4つの項目を入力します。
OpenAI Compatiblehttp://127.0.0.1:47821/v1twk_…Qwen3.5-9B-Q4_K_MAiderにTwoodyのアドレスとキーを設定し、openai/に続けてモデル名を指定して起動します。
export OPENAI_API_BASE=http://127.0.0.1:47821/v1
export OPENAI_API_KEY=twk_…
aider --model openai/Qwen3.5-9B-Q4_K_M
twk_…はご自分のキーに置き換えてください(twoody api-key create)。
提供するのはモデルだけです。記憶、文書、会話はTwoodyの中にとどまり、一切渡しません。応答するのはこのコンピュータ上のプログラムだけで、ネットワークやWebページには応答しません。プログラムごとに、無効にできるキーが必要です。