以前のエントリーでカタログスペックテキストから 日本語LLM ELYZA を使って情報を抜き出すことを試しました。 これを GPT-4oで試してみます。 今回は Python ではなく Kotlin スクリプトを使い、直接 OpenAI API にアクセスします。
Open AI API の Chat Completions API の使い方はこちらをご覧ください。
もし GPT-4o が十分に性能が高ければカタログスペックテキスト校正の支援ができるのではないか?と期待したり。
» Read MoreGPT-4o ( gpt-4o-2024-05-13 ) が出たので、兼好法師に質問するときにこのモデルを使ってみた。 基本的には、前回のエントリー(LangChain RetrievalQA を使って兼好法師に質問するその2) と同じ。 ただし、実際にやってみると以前のコードのままでは肝心の Q&A する部分が 作動しなかったので、その部分は調整しました。
» Read More世の中はゴールデンウィーク。 このような心に余裕があるときにしかなかなか Haskell に取り組めない。 今日は、以前から使ってみたかった Parsec に入門した。 そのメモです。
» Read More今回は、 前回の Embeddings の計算を OpenAIのそれではなく、Multilingual-E5-base に代えて RetrievalQA してみます。 なお、RetrievalQA の処理自体は引き続き OpenAI の LLM を使用します。
対象とするコンテンツ( 現代語訳 徒然草 (吉田兼好著・吾妻利秋訳) )の準備やコードは (Embeddings 計算を除いて) 前回を踏襲します。
» Read More現代語訳 徒然草 (吉田兼好著・吾妻利秋訳)と LangChainをつかって 吉田兼好に人生の悩みを質問してみる。
現代語訳 徒然草 をデータとして RetrievalQA を使うことで、 最終的に次のような質問から回答を得ることができました。
(質問) その道のプロとしてふさわしい立ち振舞について教えてください。
(質問) 専門家が陥りがちな間違いや見苦しい行為にはどんなことがありますか?
・・・なかなか興味深い。
» Read Moreリストの各要素に対してマップするというのは簡単。 これと同じことを 木構造 に対して行うにはどうすればいいのか?
» Read MoreColor Classic II
» Read More前回(マークアップテキストのパース、ブロッククオート領域をハンドルする) のエントリーで BlockQuote 領域が入れ子(ネスト)になっていても再帰処理すれば対処できるだろう、などと書いていたので、 それを試した。
» Read Moreマークダウン書式でいえば行頭を "> " からはじめた行は BlockQuote として扱われる。 このような領域を含んだテキストをパースして(たとえば)HTMLに変換したい場合どうすればいいか、ということを考えた。
このようなテキストをパースする場合、一度で変換をすませようとすると難しい。 また、BlockQuote 領域の中にさらに BlockQuote 領域が存在するような場合もありえる。 そのようなことまで想定すれば、一度のパースで変換を完了させるという発想は筋が悪いだろう。
» Read MoreGalaxy Tab S6 Lite / S8+ で使うアプリを書いている。 このアプリ用にボタンが二個ついているペンがほしくなったので、 Wacom One スタンダードペンを購入してみた。 Android 側でボタンが二つとも認識できるか事前に確認せずに入手したので、 せっかく買ったのに・・・という事態になるという不安があったが、大丈夫でした。
» Read Moreそれを回避するにはCSVファイルの先頭に BOM をつけるだけです。
解決方法はこれ: https://stackoverflow.com/questions/60873673/how-to-add-a-utf-8-bom-in-kotlin
» Read More