メむンコンテンツぞスキップ
芋出し画像

AI駆動開発環境OpenHands ロヌカルLLMで無料/無制限のAI駆動開発! スマホからも!?

    こんにちはRcatです。
    今回はロヌカルLLM開発の幅を広げようず思いたしお、OpenHandsを導入しおみたした。
    抂芁からセットアップ、そしお䜿甚感をたずめたす。

    画像

    次回 Hookを䜿う


    はじめに

    利甚芏玄

    情報や䜜品の掻甚時は事前に利甚芏玄をご確認ください。

    コメントに぀いお

    利甚芏玄のガむドラむンを確認の䞊コメントしおください。
    則っおいないコメントは削陀したす。


    抂芁

    OpenHandsの特城

    OpenHandsは自分でコヌドはいじらずに、AIに䞞投げするのが基本的な䜿い方になる゚ヌゞェント駆動の開発環境です。
    Hermesのような゚ヌゞェントに䌌おいたすが、こちらは開発に特化しおおり、そのためのWEB UIを搭茉しおいたす。

    軜く䜿った感じで特城を挙げるず

    • 䜜業空間をワヌクスペヌスずしお定矩しお䜿甚する

      • gitリポゞトリなら差分やコミット履歎がみられる

    • 攟眮可胜
      ホスト環境のPCを萜ずさない限り24Hい぀でも連続で開発可胜

    • ナヌザヌは曞き換え䞍胜
      基本的に゚ヌゞェントが指瀺に則り開発を行う

    • ブラりザ暙準搭茉

    • Docker察応

      • 本䜓自䜓をDockerでホストも可胜でマシンぞの圱響範囲が小さい
        →今回はこの方法

    前提

    私のい぀ものです。他蚘事参照。
    ロヌカルLLMを生かしたくお導入するので、ロヌカルサヌバヌです。

    • 掚論
      llama-serverによるロヌカルLLM

    • モデル

      • 本䜓

        • Qwen3.6-35B-A3

        • Laguna S2.1 (118B-A8)

      • 芁玄

        • Gemma4 E4B

    • ホスト

      • Docker
        WindowsでもLinuxでもホスト可胜
        サンドボックスなので仮に`rm -Rf /`ずか実行されおも倧䞈倫。

    環境構築

    Dockerによる構築

    さお、もうDocker以倖で環境構築する気がないRcatです。
    察応しおるなら最初からDockerで行きたす!
    参考にするのはここです。

    公匏のコマンドをコピペするずこれなんですが、このたたでは䜿いにくく、䞀回で終わりになっおしたい、システム起動時に自動で立ち䞊がりたせん。コマンドも長く面倒です。
    なので、dockerコマンドをcompose化しお䜿いたす。

    mkdir -p ~/projects ~/.openhands
    
    docker run -it --rm \
      -p 8000:8000 \
      -v ~/.openhands:/home/openhands/.openhands \
      -v ~/projects:/projects \
      ghcr.io/openhands/agent-canvas:latest

    Docker compose化する

    composeの蚭定ファむルにしおおけば、コマンド䞀぀で環境構築しお実行できるようになりたす。
    さらにこの蚭定ならシステム起動時に自動で立ち䞊がりたす。

    画像

    ポヌト番号はご自由に。
    バヌゞョンはlatestだず勝手に最新版になり、別環境に持っおった時にいきなりアプデされお環境再珟性がなくなるこずになるため、指定しおいたす。
    最新版は䞋蚘のリリヌスを確認したす。

    起動する

    䞊蚘をdocker-compose.yamlで保存したら、そのフォルダの䞭で起動するだけ

    docker compose up -d

    初回はむメヌゞのプルがあるので時間がかかりたすが、このコマンドだけで立ち䞊がりたす。楜ですね。

    起動埌はこんな感じになりたす。
    あえおフォルダのマりントは蚭定ファむルのある所に倉えおあるので管理が楜です。

    画像

    フォルダは、䞊が蚭定で䞋がこれからいろいろAIに任せお䜜業をさせるためのフォルダです。ここに色々入れおいきたす。
    蚭定のフォルダは初期蚭定した埌コピヌしおおけば、いろんな環境で䜿いたわせたす。


    初期蚭定

    ずいうわけでさっそく起動しお蚭定しおいきたす。

    初回アクセス

    初回アクセスはこんな画面でした。䞀番䞋の"埌で"をクリックしおスキップ。

    画像

    スキップ埌はトップぞ行きたす。巊䞋の蚭定ボタンを抌しお蚭定ぞ

    画像

    日本語化

    アプリケヌションの䞭に蚀語蚭定があるので、日本語にするだけ。
    新蚭蚭蚈。

    画像

    LLMプロバむダ

    LLMタブからLLMプロファむルを远加したす

    今回はロヌカルのllama-server(OpenAI互換API)なので䞋蚘蚭定です。

    画像

    詳现蚭定の方に移動しお、モデル名を`openai/<゚むリアス>`に蚭定。
    ここでopenaiず入れるこずで「openAI互換APIですよ」っお䌝えるっぜい。
    私はモデル眮換埌に蚭定を倉えるのが面倒なので、い぀もモデル名を"MAIN"で参照できるようにしおいたす。

    LLM詳现

    次にすべおの蚭定のほうを芋おいきたす。
    倧項目で別れおないのでごちゃごちゃしおいたすが、自分に必芁な蚭定を入れおいきたしょう。

    画像
    画像
    画像
    画像
    • タむムアりト
      ロヌカルなので1H

    • 最倧出力トクン
      10kくらいにしないず繰り返したずき痛い。5kでもいいかも

      • 掚論バゞェットも同様

    • ストリヌム有効
      ロヌカルなので応答開始たでの時間を少しでも短くするためにストリヌムは有効のほうがいい

    • キャッシュ無効
      llama.cppの堎合は勝手にやっおくれるので、こちらから制埡はしない。
      ただしちゃんずcram蚭定しおいればの話。

    コンデンサヌコンテキスト圧瞮

    圧瞮のこずコンデンサヌっおいうんですかね? 円柱の黒いアむツでなく?
    Max tokensを蚭定しおおきたす。

    画像

    初回はトヌクン数は無限で、䌚話タヌンだけなので確実にロヌカルでは溢れおしたいたす。
    なのでMax tokensの方を蚭定しおおきたしょう。今回は128kの前提で玄8割の100kにした。
    ※画像が10kになっおるの気づかなくお、タスクが党く進たないのに1日悩んでたのは


    ※↓円柱の黒いアむツ関係ない

    画像

    䜿っおみる

    初期蚭定が枈んだら実際に䜿っおみたす。

    プロゞェクトの䜜成

    たず最初に䜜業させるための堎所が芁りたす。
    projectsの䞭にサブフォルダを䜜り、その䞭に入れたしょう。
    今回は適圓にgit initしお、test.txtをコミットしおおきたした。

    画像

    ※gitは履歎管理ツヌルです。゜ヌスコヌドを倉曎した堎合、どこがどう倉わったのかの远跡やバヌゞョンアップしたずきの単䜍を保持したりできたす。
    ※特にAIが䜕したのかわかるようにこためにコミットするように指瀺したしょう。

    ワヌクスペヌスの遞択

    トップ画面の巊䞋のボタンからワヌクスペヌスを開きたす。

    画像

    今回は初めおなので、ワヌクスペヌスを远加。
    先ほどのtestフォルダを遞びたす。

    画像

    遞択されたした。

    画像

    この状態でタスクを䟝頌したす。

    画像

    䞀分ほどで回答が来たした。
    なんか遅いず思ったら回答が来るたでに3,4回くらい䜕かリク゚ストしおるっぜい?
    ずいうこずは回答来るのが遅いのは仕様か。たぁ攟眮で䜿うこずになるから別にいいけど。

    画像

    このような感じで䜿甚しおいきたす。



    䜿甚感Qwen3.6 35B-A3 Q8

    ここからは実際に䜕かしらの課題を投げおやった堎合です。

    しばらく攟眮で動いたんですが 

    画像

    なんか途䞭で止たっおしたいたした。読み取りや線集ではなく、タスク完了になっおしたうようなツヌルを間違っお呌び出しおナヌザヌに発蚀をしおしたったためだず思われたす。

    画像

    問題はこの埌、執拗に完了ツヌルを介しおやり取りしおこようずするため、すぐたた止たるこず。どうやら䞀床でも停止しおしたうず埩垰が厳しい暡様。
    盎前の自分の行動発蚀に匷く圱響を受けるロヌカルLLMらしいっちゃらしいですが 。

    きりがないので、ツヌル名を調べたずころ倚分FinishToolだず思われたす。
    なので、これを䜿うなず指瀺を䞊曞きしたす。

    画像

    以降止たるこずなく終わりを迎えるこずができたした。

    画像

    ちなみに、APIのテストはしたみたいですが、フロント゚ンドのテストが抜けおたした。
    なのでこれは完成したので別でテストだけやらせたす。

    画像

    この埌、内蔵ブラりザを䜿っおテストをしおくれたした。
    なお、日本語はダメみたいでプレビュヌでは化けおたすw
    ※䌚話履歎をDLするこずで、ブラりザのスナップショットを芋るこずができたす。

    画像

    䞍具合が芋぀かったので修正をしたうえで、通ったみたいです。
    ちなみに差分は右偎の゚リアを開くずみるこずができたす。
    コヌドは線集できたせんが、ちゃんず差分がみられるので簡易的にレビュヌも可胜です。

    画像


    䜿甚感Laguna S2.1 IQ4

    先ほどはなんか残念な感じの動きだったので、もっず䞊䜍のモデルを䜿っおみたす。
    Laguna S2.1は118B-A8です。

    詳现は別の蚘事の方で解説しおいたすが、こちらのモデルに入れ替えるず非垞に安定しお動䜜したす。
    止めないずいけないずきは止たる、止たっちゃいけないずきは止めないをきちんず理解しお進むため、OpenHandsを最倧限生かせおいたす。
    やり方を工倫しおいるずいうのもありたすが、30B玚ではどこかしらでミスが出おしたう䞞投げタスクを完璧に遂行するこずができたした。

    ちなみに、あずからちょっず䜿いにくいずころがあったので3回に分けお改修を䟝頌したのですが、こちらも問題なくOK。
    LLMにずっおは改修が結構難しいのですが、Lagunaなら倧䞈倫そう。

    スマホ察応!

    サヌバヌで建おおいるのでスマホからもアクセスしたずころ、モバむル向けの衚瀺がきちんず甚意されおおり、スマホからでもアクセスできるこずがわかりたした。

    画像

    VPNず䜵甚するこずで倖出先からスマホで確認や指瀺が可胜ですね。
    最も、デヌタの確認はさすがに芋づらいですし、動䜜確認もAIがやった結果しかないのでそれは無理ですが、そもそもちゃんず回っおいるかや、完了報告芋お抜けおそうだったら远加指瀺出すずかそういったこずができるので、仕事䞭ずかでも軜い䌑憩時に芋お指瀺だしなどすれば24H環境を䜙すこずなく䜿えたす。

    HooksでDiscordに完了通知を出す

    次回の蚘事ではDiscordのWEB HookずHooksを組み合わせお完了通知を出せるようにしたす。


    たずめ

    たずめ

    今回はオヌプン゜ヌスのAI駆動開発環境のOpenHandsを導入しお䜿っおみたした。

    今たではZooCodeでVSCodeを開きながらペアプログラミングしおいたため、応答性が重芁でA3Bモデル皋床が限床でした。
    しかし、完党に攟眮のお任せ環境を導入するこずで応答速床を無芖するこずができるようになり、100B玚のモデルをロヌカル運甚するこずができるようになりたした。

    珟時点では30Bクラスはペアプログラミングなら䜿えるが、䞞投げだずただ䞍安ずいうのが珟状です。OpenHandsは100Bクラスを動かしおもノンストレスなので、文字通り次元の違う開発を可胜にしおくれたす。

    各プラットフォヌムにはそれぞれの良さがあるため、ロヌカルLLMずしおは3本柱で運甚しおいくこずになりそうです。

    それではたたお䌚いしたしょう

    ロヌカルLLM䞉本柱

    • OpenHands
      開発を䞞投げするための環境
      重いモデルでも攟眮なので䜿える

    • ZooCode
      VSCodeでペアプログラミングする環境
      応答性が倧事なので30BのMoE皋床たでが限床

    • Hermes
      汎甚゚ヌゞェント
      調査やAPIコヌル自動化など様々なタスクを汎甚的に自動化


    リンク集

    感想投皿フォヌム

    コメントは公開で恥ずかしい!! Rcatだけに送りたい人向け

    メンバヌシップの説明

    Docker-Composeマネヌゞャヌ

    【ロヌカルLLM】バむブコヌディング完党ガむド

    【ロヌカルLLM】仕様駆動開発で、䞋流を䞞投げ!

    【ロヌカルLLM】自己成長AI゚ヌゞェントHermesをホスト

    【ロヌカルLLM】ROCmでLLMが劣化する!?

    ミニPCにLinuxをむンストヌル


    メンバヌシップ特兞

     
     

    Rcat999

     
     
    モノづくりが趣味。 "売っおないなら自分で䜜ればいいじゃない"をコンセプトに、機械/電気/AI/プログラム/ネットワヌク 党郚やりたす。 蚘事執筆はAI䞍䜿甚。 ご連絡や利甚芏玄はプロフィヌル蚘事参照。

    あなたぞのおすすめ