オートギット は、Gitリポジトリを自動的に監視・管理し、LLMを使用してコミットメッセージやドキュメント/READMEを作成するクロスプラットフォームのElectronアプリです。
監視と自動コミット
– 任意のフォルダをGitリポジトリとして追加: オートギットは必要に応じて初期Gitセットアップを行います。
– リアルタイムファイル監視(Chokidar): ファイルが変更されると、変更がデバウンス間隔で検出され、自動的にGitにコミットされます。
– インテリジェントなコミットメッセージ: 定義された行数または時間の閾値に達すると、オートギットはすべての新しいコミットを集め、その差分からOllama-LLM(qwen2.5-Coder)用のプロンプト最適化された入力を作成し、標準のコミットメッセージを意味的に簡潔な要約に置き換えます。
README生成とリポジトリ説明
– ボタン一つでまたは初回追加時: オートギットは関連するコードファイル(サイズ、関連スコア、.gitignoreルールに基づく)を抽出し、それをLLMプロンプトに供給して自動的に完全で良く構造化されたREADME.mdを作成または更新します。
– LLM支援の短い説明(≤ 255文字): 各フォルダに対して、オートギットは同じOllamaバックエンドを使用して数秒で一行のプロジェクト説明テキストを生成できます。
堅牢なフォルダ管理
– 欠落または移動したフォルダは自動的に検出され(「移動が必要」)、サイドバーアイコンをクリックすることで新しいパスを割り当て、元のGit状態を復元できます(コミットハッシュによる確認)。
– 簡単なドラッグ&ドロップサポート: フォルダをドラッグしてアプリに直接引き込み、すぐにGitリポジトリを初期化し、監視を開始します。
– .gitignore管理: 一般的な一時的/IDE/ビルドファイルは自動的に検出され(Micromatch + 事前定義されたパターン)、必要に応じて.gitignoreに追加されます。
Gitea統合とプッシュワークフロー
– 設定で個人のGitea APIトークンを保存できます。
– 「Giteaにプッシュ」をクリックすると、オートギットはリモートリポジトリが既に存在するかどうかを確認します:
存在しない → リポジトリを作成(LLM生成の短い説明付き)。
存在する → 現在の説明をPATCHで更新します。
– その後、ローカルリモートオリジンが再構成され、現在のブランチとタグが自動的にプッシュされます。
デスクトップUIと操作性
– ElectronとTailwindCSS : サイドバー(監視されているすべてのフォルダのフィルタリングリスト)、中央コンテンツエリア(すべてのコミットをページネーション表示、差分ビュー、スナップショットエクスポート、「ここにジャンプ」チェックアウトを含む)を持つレスポンシブインターフェース。
– スカイモード : 自動的な時間依存の背景(昼は柔らかい青、夜は暗い青)。
– トレイメニューとトレイアイコン : アプリがトレイに最小化され、トレイアイコンを右クリックすると、フォルダごとの監視の開始/停止、フォルダの追加/削除、「終了」が迅速に行えます。
– 設定ダイアログ :
> スカイテーマのオン/オフ
> 「トレイに閉じる」: アプリを実際に終了するのではなく、閉じるとウィンドウを隠します
> 自動起動の動作
> インテリジェントなコミット閾値(行数と分数)
> 使用するOllamaモデルの選択(コミット対README)
> Gitea APIトークンを保存
– ゲーミフィケーションとライブ統計 : コミットのための日次カウンター、色分けされた視覚化(「今日のコミット」)、次の自動LLMコミットまでのライブカウントダウン。
テクノロジースタック
– フロントエンド : Electron + HTML/CSS + TailwindCSS + 自作のミニマルアニメーション「アニメキャット」(クライアントサイドのキャットストリーミングLLM応答時)。
– バックエンド/Node :
> chokidarによるファイル監視
> simple-gitによるすべてのGit操作(初期化、ステータス、コミット、差分、リベース、プッシュ、リモート設定)
> micromatchとignoreによるファイル/フォルダのフィルタリング
> electron-storeによるすべての設定の永続化(Giteaトークン、スカイモード、閾値、モデル選択を含む)
> 自作のLLM統合: Ollamaサーバーの開始/停止、fetch(…).getReader()による並行ストリーム処理。
> トレイ/メニュー統合: ネイティブElectronメニューとサイドバー/ツリービューのコンテキストメニュー。
すべての機能 – 継続的な自動コミットの作成からGiteaへの完全自動プッシュおよびリポジトリ設定まで – は、開発者の日常を楽にするために設計されています: コードに集中し続ける一方で、オートギットはバックグラウンドでコミット履歴、ドキュメント、リモートリポジトリを常に最新の状態に保ちます。
「仮想次元間霊テレポーテーション装置」は、日本の神話のキャラクターをブラウザ上に表示するインタラクティブな3Dウェブアプリケーションです。デジタル「メルカバ」を通じて、これらの存在が仮想世界にテレポートされ、観察され、クリックすることで情報ボックスオーバーレイで探求できます。 このポートフォリオプロジェクトの目的は、日本の神話についてドイツ語で学び、文化的な架け橋を築くことです。
フロントエンド: Three.js バックエンド: Node.js, Express, Websocket 3Dモデル: Hunyuan3D-2, Blenderでの編集 情報テキスト: ChatGPT
すべての3D環境、モデル、テクスチャを含む、1200px x 900pxの樹冠テクスチャとHDRI環境マップを含め、全コードは500キロバイト未満です。3Dモデルは動的にロードされ、クライアントはサーバーが「プッシュ」するまでそれらに関する情報を持ちません。サーバーとの通信とスポーン機能はスピナー(メルカバ)に統合されています。 モバイル表示はデスクトップ版よりも計算負荷が少なく、アダプティブ・フィデリティ・システムも導入されています。
漢字の一日は「いちにち」(「一日中」)または「ついたち」(「月の初日」)と読むことができます。 文脈によっては、いくつかの漢字の読み方が異なります。
振り仮名は日本の読み助け です。これは、漢字の横または上に書かれ、その発音を示すためのひらがな文字です。
従来の振り仮名ソフトウェアは、テキストの全体的な意味や文脈を認識できず、日本の読者が実際にテキストを読むように振り仮名を正しく表示できないことがあります。
しかし、AIを使えばそれが可能になったため、このソフトウェアをプログラムしました。 「スマート振り」は、文脈、口調などを分析して、テキストに適切な読みを振り仮名として追加します – 漢字の読み方を間違って学ぶのではなく、日本の人がテキストを(前)読むかのように学べるようにします。
ユネスコプロジェクト「無形文化遺産」(ICH)は、無形文化遺産の印象的なコレクションと、効果的な保護措置の登録を提供しています。 これらはユネスコのウェブサイトで英語、フランス語、スペイン語で見つけることができ、世界の国々の個々の文化的特性を美しく説明しています。
オンライン民族学の友人として、私はインタラクティブな世界地図(JavaScript、OpenStreetMap & GeoJSON)という形で新しいインターフェースを設定しました。 国をクリックすると、ユネスコが登録したその国の文化にアクセスできます(ユネスコオープンアクセスデータベース)。 ChatGPT APIとPythonを使用して、私はデータベース全体を世界で最も話されている10の言語に翻訳しました。また、Topaz AIを使用してデータベース内のすべての画像を改善/拡大しました。
サイコロをクリックすると、ランダムな投稿が表示されます。 世界を発見しよう!注意 : モバイルビューには適していません
出典 :
ユネスコオープンアクセスデータベース:メタデータ、説明、画像はこのプロジェクトに使用されました。
OpenStreetMap:地図表示はOpenStreetMapのタイルに基づいています。
GeoJSON世界地図:国境のベクターデータはオープンソースのGeoJSONプロジェクトから取得されました。
IPAPI (ipapi.co):自動位置情報はAPIサービスipapi.coを通じて行われます。
Topaz AI:ユネスコデータベースの画像はTopaz AIでアップスケールされました。
ChatGPT (OpenAI):ユネスコデータの10言語への翻訳はChatGPTを使用して作成されました。
このプロジェクトは実験的な非商業ポートフォリオプロジェクトであり、デモンストレーション目的のみに使用されます。すべてのコンテンツ(画像、テキスト、タイトル)はユネスコの所有物です。翻訳はAI(ChatGPT)を使用して作成されました。地図タイルはOpenStreetMapから取得されています。ユネスコ、OpenStreetMap、または他の組織との関連はありません。完全なユネスコメタデータは英語でダウンロード可能です。
ページ、投稿、カスタムタイプの投稿、そのタイトルおよびカスタムフィールドを自動的に翻訳するためのWordpressプラグインです。 翻訳は投稿のメタデータに保存されます。 選択された言語に応じて、フロントエンドは同じURL / 投稿IDで言語を表示します。 グーテンベルクエディタには、言語を切り替えて個別の変更を行うための小さなドロップダウンメニューがあります。また、バックエンドでは、たとえばPolylangのように内容の不明瞭な複製はありません。 翻訳はChatGPTによって行われ、文脈に応じた翻訳が可能です – トーンがどのようであるべきか(例:丁寧またはカジュアル)、焦点を当てるべき内容(例:プロジェクトプレゼンテーション、マーケティングなど)を指定することで、より良い翻訳が得られます。
gitリポジトリには、コンテンツを選択して処理するためのコードが用意されています。
2015年から2019年まで、ザールブリュッケンのザール美術大学での学びの中で、人工知能、バーチャルヒューマノイド、人間と機械の相互作用、そしてそれに伴う哲学的および文化的な問題に深く取り組みました。この過程で、私は理論的にも実践的にも、AI技術との関わりにおける限界や誤解について考察しました。
私の学士論文「人工知能と実際の知能の比較」(2017年、最終成績1.0)では、デジタルアバターが遺伝的アルゴリズムを用いて学習プロセスをシミュレートする方法を探求し、これを人間のパフォーマーの実際の学習や痛みの経験と比較しました。パフォーマンス「Learning」では、デジタルキャラクターの空間表現に光学的なペッパーズゴースト効果を使用しました。その結果は、技術的なシミュレーションと人間の体験との間に明確な感情的隔たりがあることを示しました。
修士論文では、このアプローチをさらに発展させ、バーチャルキャラクターの認識と演出、そしてそれらが人間とどのように相互作用するかに深く取り組みました。その中で、以下のプロジェクトが生まれました:
Gerkzeuk (2016) : 自律的にインターネットから画像をダウンロードし、変更し、販売するコンピュータ制御のオブジェクト。このオブジェクトは、著作権、機械倫理、アーティストの役割に関する基本的な問いを提起しました。ホログラフィックな表現(「アイリス」)を通じて、機械的なアーティストは人間のようなペルソナを持ちました。プロジェクトページへのリンク
Pepper’s Ghostクリスタル (2016年以降) : バーチャルヒューマノイドをホログラフィックに表示し、顔認識、感情分析、音声認識ソフトウェアを備えたインタラクティブなショーケース。この作品は、人工的および人間的な相互作用を具体化することに深く取り組みました。プロジェクトページへのリンク
人工知能と実際の知能の比較 (2017) : デジタルキャラクターが遺伝的アルゴリズムを用いて人間のパフォーマーと並行して基本的な運動能力を学ぼうとするパフォーマンス。この作品は、デジタルシミュレーションと人間の体験との間の違いや感情的な次元を明らかにします。プロジェクトページへのリンク
アンチアート (2019) : 予測不可能なインパルスによって制御されるマリオネットを用いた意図的にシンプルな装置で、AI技術に対する過剰評価とその周囲のハイプをユーモラスかつ批判的に反映しています。プロジェクトページへのリンク
修士展のための空間インスタレーション (2019) : シナリオ的な状況の中で、訪問者が自動的に撮影され、その顔が投影されることで、自己認識、プライバシー、エコーチャンバーといったテーマを具体化しました。プロジェクトページへのリンク
これらのプロジェクトは、デザインにおける透明性、ブラックボックス問題、偶然性と決定論的システム、そしてAIの倫理的および哲学的次元に関する理論的な考察に伴って進められました。フリーダー・ナケ、アンドリュー・グラスナー、リチャード・デイヴィッド・プレヒトなどの参考文献に触発され、私は人工知能、人工生命、意識に関する用語や誤解について批判的に考察しました。
私の芸術的研究から得られた中心的な知見は以下の通りです:
AI技術は人間の行動を模倣することはできますが、真の感情的深さや本物の共感を生み出すことはありません。機械が生み出す人間の相互作用の幻想は、その影響において常に表面的なレベルに留まります。
生物学や神経科学からの比喩的な用語(「ニューラルネット」や「知能」など)の技術における悪用は、誤解や技術的可能性の神話的な過大評価に大きく寄与しています。
透明性デザインの導入と技術プロセスの開示は、恐怖を軽減し、現代技術に対する批判的思考を促進するために不可欠です。
技術システムにおける偶然性や予測不可能性は、しばしば魔法や自律性の認識を生み出し、技術的能力の過剰解釈を引き起こすことがあります。
AI技術やバーチャルキャラクターの文化的および社会的受容は、技術的なアーティファクトに人間の特性を見出そうとする心理的傾向に深く根ざした投影や幻想に強く影響されます。
ソフトウェアや機械の独立性が見えるように思えても、その責任は常にこれらのシステムを設計し、プログラムし、操作する人間にあります。機械やソフトウェアは常に道具であり、自立した主体にはなりません。
自律的で自己再生産的なプログラム(「フォークボム」など)に取り組むことで、「生命」の意味に新たな深みが生まれ、従来の生物学的定義に挑戦します。
心理的な観点から、科学者、IT技術者、アーティストの仕事には、人工的な存在を創造しようとする無意識の動機がしばしば見られ、これは心理学で議論される「子宮の嫉妬」に似ています。ここには、創造的に生命や生きたシステムを生み出したいという深い欲求が反映されています。
オブジェクト指向プログラミングは、バーチャルな世界を再構築する可能性を提供し、現実とシミュレーションの境界についての考察を促します。
2015年から2019年までの私の活動は、人間性、技術、そしてそれらの複雑な関係に対する多面的で批判的かつ革新的な取り組みを示しており、これらのテーマに関する公共の議論を確かなものにし、反映させることを目指しています。
量子コンピュータ(仮想)のためのパンチカード生成ツールです。
このツールは、古典的なビットと量子ビット(キュービット)の比較を通じ、キュービットのインターフェースについて実践的な検討を行っています。論理や計算が、3Dベクトルを用いて理解できるという考えに基づいています。
【操作マニュアル】
• 左側の球体はビットを表しています。 クリックすることで、その「状態」を切り替えることができます。
• 右側の球体はキュービットを表しています。 内側の球体に対して、ドラッグ&ドロップ(x軸およびy軸)やマウスホイール(z軸)を用いることで、その「状態」を3D空間内で操作できます。
• 小さな球体を操作することで、パンチカード出力を切り替えることが可能です。
「真実」を定義するためのプログラムです。 このツールを用いれば、独自のノードネットワークグラフ、すなわちオントロジーを作成することができます。
Javaで実装されたこのオントロジー作成ツールは、ネットワークトポロジーの設計、保存、ロード、および画像のエクスポート機能を備えています。
Protégé、ONTOLIS、OntoStudioなどに代わる、シンプルかつ軽量な選択肢となります。
パフォーマンス「Learning」では、実在知能と人工知能の行動の可能性を比較しています。俳優と、ペッパーズ・ゴースト効果によって空間的に表現された3Dキャラクターが、同等の空間で並行して活動します。
両者は初め、立つことができず、パフォーマンスの間にその習得に挑戦します。何度も倒れながら、失敗から学んでいく様子は、見る者に新たな発見をもたらします。
デジタルキャラクターには、遺伝的アルゴリズムというプログラムされた知能が搭載されており、実在の俳優は有機的な脳を持っています。アバターは人間よりも速く立つ方法を学習しますが、その不器用な動きはどこか滑稽で、デジタル技術と人間の真の姿とのギャップを露呈します。一方で、人間は身体的な痛みと、必死に立とうとする姿勢を通して、観る者に深い感情的共感を呼び起こします。
Andreas Bayer
作業プロセスのビデオ ― 人工知能がどのように立つことを学んだか ―
世界中の出来事の関連性は、空間的・時間的に表現することでより深く理解できるものです。この世界地図は、選択された時期に応じて自動的に変化し、全ての次元を直感的に閲覧できるインターフェースとして機能します。教育目的のためのツールとして、実際の使用例のように、時間と空間を介して情報を探求できる仕組みです。
たとえば、このようなインターフェースをWikipediaに連携させれば、記事を時間軸と空間軸に沿って探求することが可能になり、「いつ、どこで何があったのか?」が直接的に視覚的に明らかになり、新たな関連性が発見されるでしょう。あるいは、Google Earthを用いて、時系列で過去へと旅をする感覚を味わえるかもしれません。
この学生によるProof of Concept(概念実証)は、四大世界宗教に関する500以上の情報ポイントとテキストを含んでいます。2017年に、毎年開催されるHochschule für Gestaltungの学生展示会で発表されました。
プライバシーポリシー
クッキーが保存されました。名前は「lang」、サイズは6バイト、保存期間は3日間で、どの言語を希望するかを記憶するために技術的に必要です。優しくしてね!