投稿

ローカル環境で「Gemma4」を動かしてみた!

ローカル環境で「Gemma4」を動かしてみた!e4bと26bの精度やコーディング・自己デバッグ能力を検証 こんにちは!今回は、ローカル環境で実行可能な大規模言語モデル 「Gemma4」 の動作検証を行いました。 パラメータサイズの異なる 「Gemma4 e4b」 と 「Gemma4 26b」 の2つのモデルに対して、日常的な会話や長文の要約、そして実践的なC#のプログラミングタスクを与えてみました。 特にプログラミングの検証では、 「AIが書いたコードでエラーが出た際、エラーメッセージをそのまま返して修正できるか(自己デバッグ能力)」 という実践的なやり取りも試しています。 それぞれのインプットとアウトプットをまとめましたので、ローカルLLMの導入を検討している方の参考になれば幸いです! 💬 1. Gemma4 e4b の検証:日常会話と文章要約 まずは軽量な「Gemma4 e4b」モデルに対して、基本的な会話とニュース記事の要約をお願いしてみました。 👤 インプット こんにちは、何ができますか? 🤖 アウトプット こんにちは!私はGoogleによってトレーニングされた、大規模言語モデルです。 私にできることはたくさんありますよ。例えば: 質問に答える: どんなことでも聞いてください。知識に関する質問はもちろん、雑談やアイデア出しにも対応できます。 文章を作成する: 小説、詩、メール、レポートなど、様々な種類の文章を作成できます。 翻訳する: 複数の言語間で翻訳が可能です。 要約する: 長い文章を短くまとめることができます。 コードを書く: プログラミングに関する質問や簡単なコードの作成も可能です。 ゲームをする: 簡単なテキストベースのゲームもできます。 何か私に試してみたいこ...

AIにプロジェクトを読ませる「Project Analyzer」がNotebookLMに完全対応&ファイル個別出力も可能に!

【アップデート】AIにプロジェクトを読ませる「Project Analyzer」がNotebookLMに完全対応&ファイル個別出力も可能に! こんにちは!AIツールにプロジェクトをまるごと読み込ませるための自作ライブラリ 「Project Analyzer」 のアップデート情報です。 (前回の記事: AIにプロジェクトを読ませる「Project Analyzer」がExcel/Wordファイルに対応!設計書も丸ごとMarkdown化 ) 私自身、このツールを使ってGoogleの「NotebookLM」などにソースコードを読み込ませて日々活用しているのですが、実際に使っている中で 「AIが一部のコードを正しく解釈してくれない」「回答の参照元ファイルが分かりづらい」 といった課題が見えてきました。 そこで今回は、より快適にAIと対話できるように ファイルごとの個別出力機能 を追加し、さらにNotebookLM特有の 読み込みエラー(パース失敗)を解消する不具合修正 を行いました! 🚀 新機能:ファイルごとのMarkdown出力に対応! これまでProject Analyzerは、AIに一度に渡しやすくするため、プロジェクト全体の全ファイルを「1つの巨大なMarkdownファイル」にまとめて出力していました。 しかし、NotebookLMで処理した際、AIが回答の根拠として提示する「参照元情報」をクリックしても、 1つの巨大なファイルが開くだけで、実際にはどのクラスやファイルを参照したのかが非常に確認しづらい という問題がありました。 そこで、新しく 「ファイルごとにMarkdownを出力する機能(オプション)」 を追加しました! このオプション(CLIでは --per-file )を有効にすると、 01_ProjectContexts フォルダ内に、元のフォルダ構成を維持したまま Hoge.cs.md のように個別のファイルとして出力されます。 これにより、...

AIにプロジェクトを読ませる「Project Analyzer」がExcel/Wordファイルに対応!設計書も丸ごとMarkdown化

AIにプロジェクトを読ませる「Project Analyzer」がExcel/Wordファイルに対応!設計書も丸ごとMarkdown化 こんにちは!以前、ChatGPTやNotebookLMなどのAIツールに、複数ファイルからなるプロジェクトをまるごと読み込ませるための自作ライブラリ 「Project Analyzer」 をNuGetで公開しました。 (前回の記事: AIにソースコードを読ませるのが超快適に!プロジェクトをMarkdown化する自作ライブラリをNuGetで初公開しました ) AIにソースコード全体とフォルダ構成を「1つのMarkdown形式」にまとめて渡せるツールとして、私自身も日々活用しているのですが、実際の開発現場で使っていると 「ソースコードだけじゃなくて、設計書も一緒に読ませたい!」 という場面が頻繁に出てきました。 そこで今回、Project Analyzerを大幅にアップデートし、 ExcelファイルやWordファイルの解析にも対応 しました!さらに、細かい不具合修正や便利なオプションも追加しています。 🚀 アップデートの目玉機能 1. Excel / Word ファイルからのテキスト抽出に対応! これまでProject Analyzerは、主に .cs や .js などのテキストファイル(ソースコード)の読み込みに特化していました。 しかし、実際の業務では 「Excelで書かれたテーブル定義書」 や 「Wordで書かれた要件定義書」 がプロジェクトフォルダ内に混在していることも少なくありません。 今回のアップデートで、 .xlsx 、 .xls 、 .xlsm 、 .docx 形式のファイルを自動的に検知し、ファイル内のテキストをAIが読みやすい形式に変換してMarkdownに含めることができるようになりました。 Excelファイル: シートごとにデータを読み込み、AIが解釈しやすいようにカンマ区切り(CSV風)のテキストに変換し...

AIにソースコードを読ませるのが超快適に!プロジェクトをMarkdown化する自作ライブラリをNuGetで初公開しました

AIにソースコードを読ませるのが超快適に!プロジェクトをMarkdown化する自作ライブラリをNuGetで初公開しました 最近、ChatGPTやClaude、NotebookLMなどのAIツールに、自分が書いているソースコードを読み込ませて「このバグの原因は?」「この機能をリファクタリングして」とお願いすることが増えましたよね。 でも、複数のファイルにまたがるプロジェクトをAIに渡すとき、 「一つ一つのファイルを開いてコピペする」 のが地味に面倒ではありませんか? さらに、AIにシステム全体の文脈を理解してもらうには、「ファイルの中身」だけでなく「フォルダ構成(ディレクトリツリー)」も一緒に教えたいところです。 そんな手間を自動化して、プロジェクト全体をAIが読みやすい「1つのMarkdown形式」にシュッとまとめてくれるC#ライブラリ、 「Project Analyzer」 を自作しました! さらに今回は、このライブラリを 自身初のNuGetパッケージとして一般公開 してみたので、その機能と公開してみた感想をご紹介します。 Project Analyzer とは? Project Analyzer は、指定されたプロジェクトフォルダやGitHubリポジトリの構造と内容を分析し、AI (LLM) のコンテキストとして利用しやすいようにMarkdownとして出力・取得できる.NET製のライブラリです。 主な機能 📁 フォルダツリーの生成: プロジェクトの階層構造をツリー形式のテキストで出力します。 📄 統合されたコンテキストの生成: プロジェクト内の全ソースファイルを、シンタックスハイライトや相対パス付きのMarkdownに集約します。 🐙 GitHubリポジトリの直接分析: ローカルフォルダだけでなく、GitHubのリポジトリURLを指定するだけで、自動でクローンして分析してくれます。 ⚙️ 柔軟な除外設定: .pr...

Open Notebook日本語化!システムプロンプトを書き換えて精度を劇的に向上させる方法

Open Notebook日本語化!システムプロンプトを書き換えて精度を劇的に向上させる方法 前回の記事では、LM StudioとOpen Notebookを使って、完全ローカル環境で「自分だけのNotebookLM」を構築する方法を紹介しました。 ▼前回の記事はこちら NotebookLMのローカル版「Open Notebook」をLM Studioで完全オフライン構築してみた! 環境構築はできたものの、使っているうちに「回答が英語になりがち」「日本語のニュアンスが少し変」と感じることはありませんか? 実は、Open Notebookの動作を司る「システムプロンプト」はデフォルトで英語で書かれています。これを日本語化することで、ローカルLLMが日本語の文脈を理解しやすくなり、回答精度や自然さが劇的に向上します。 今回は、このシステムプロンプトの日本語化手順と、具体的な書き換え内容を全ファイル分公開します。 仕組み:プロンプトはどこにある? 実は、前回の記事で作成した時点の docker-compose.yml には、プロンプトを変更するための設定は含まれていませんでした。 そこで、Open Notebookのソースコード(GitHub)を確認してみたところ、AIの挙動を定義しているシステムプロンプト(.jinjaファイル)は、コンテナ内の /app/prompts というディレクトリにまとまっていることが分かりました。 つまり、 ローカルに日本語化したプロンプトファイルを用意し、それをコンテナの /app/prompts に上書き(マウント)してあげれば、挙動をカスタマイズできる ということです。 これを実現するために、 docker-compose.yml の volumes セクションに以下の行を追加設定します。 volumes: - ./notebo...

NotebookLMのローカル版「Open Notebook」をLM Studioで完全オフライン構築してみた

イメージ
NotebookLMのローカル版「Open Notebook」をLM Studioで完全オフライン構築してみた! Googleの「 NotebookLM 」、便利ですよね。資料をアップロードするだけで、AIが内容を理解して回答してくれたり、ポッドキャスト風に解説してくれたりするあのツールです。 「でも、社内秘のドキュメントをGoogleにアップロードするのはちょっと…」 「インターネットに繋がっていない環境でも使いたい!」 そんなニーズに応えるべく、GitHubで公開されているOSSの「 Open Notebook 」を試してみました。今回はこれを、以前の記事でも紹介した LM Studio と組み合わせて、 「完全ローカル(インターネット不要)」な環境 で動作させることに挑戦しました。 構築にあたって少しハマりポイントがあったので、その回避方法も含めて共有します。 Open Notebookとは? Open Notebookは、Google NotebookLMのオープンソース代替を目指したプロジェクトです。PDFやWebサイトのURLをソースとして読み込ませ、その内容についてチャットを行うことができます。 公式リポジトリはこちら: https://github.com/lfnovo/open-notebook 構成:LLMは「LM Studio」を採用 Open Notebookは通常、OpenAIなどのAPIキーを設定して使いますが、今回は 完全ローカル を目指すため、バックエンドのLLMとして LM Studio を採用します。 LM Studioでサーバーを立ち上げ(ポート1234など)、Open Notebook(Dockerコンテナ)からそこに接続する構成です。 ベースとなる docker-compose.yml は以下のようになります。 ...