1 ポイント 投稿者 GN⁺ 2023-11-01 | 1件のコメント | WhatsAppで共有
  • 「Phindモデル、GPT-3.5の速度と16kコンテキストでコーディングにおいてGPT-4を上回る」というタイトルの記事
  • Phindモデルは、GPT-3.5の速度と16kコンテキストを維持しながら、コーディング作業でGPT-4を上回る
  • www.phind.com ウェブサイト。アクセス前にセキュリティ確認が必要
  • ウェブサイトは、ユーザーのブラウザが旧バージョンであるため更新が必要だと通知
  • Cloudflare開発者ページでブラウザ対応に関する追加情報を確認可能
  • ウェブサイトのパフォーマンスとセキュリティはCloudflareが提供

1件のコメント

 
GN⁺ 2023-11-01
Hacker Newsの意見
  • 分散ジョブキューに関するかなり曖昧な高レベル設計の質問で、PhindとGPT-4を数分比較してみたところ、Phindは実装に関わる具体的なライブラリを積極的に推薦し、自分の調査ともよく一致していて、推薦したライブラリを使ったサンプルコードも出してくれた。
    PhindはGitHub、Stack Overflowなど関連する出典を豊富に付けてくれるので、追加調査の出発点として使いやすく、フォローアップ質問の提案もかなり良かった。
    ただしGPT-4のほうが回答品質は高く、システム設計面接ならより優れた候補に見えた。ロギングやメトリクスのような質問外の文脈まで押さえ、「質問の裏にある質問」をよりうまく捉え、フォローアップ質問でも会話の方向を絞り込んでいく感覚が強かった。
    これはアルゴリズム実装のようなコーディング能力テストではなく、高レベル設計とアーキテクチャ判断のための思考補助ツールとしての比較だった。

    • GPT-4は他のモデルに比べて「質問の裏にある質問」を本当にうまく押さえるし、家の壁の修理のようにまったく知らなかった任意の作業にも非常に役立った。
    • Phindが提示したGitHub、Stack Overflowなどの豊富な出典が実際に正確だったのかが気になる。
    • カスタム指示があったかどうかも明らかにしないと、比較が逸話にとどまってしまう。プロンプトも一緒に載せるべき。
    • 「文脈を与える」という部分は、モデルに合わせてプロンプトをうまく書く方法と大きく関係している。公平に比較するには、コードだけを与えて何を作り出すかを見るべき。
    • どんなプロンプトで質問したのか、一部を共有してくれるとよい。
  • LLMによく投げるひっかけ質問として、「GeoJSONのような地理空間データを入力と出力に使う最新の機械学習論文とコードを5つ挙げて」と聞いてみた。
    そういう最新研究分野は存在しないと理解しており、地理情報データは非連続的なのでトランスフォーマーには不向きで、文脈依存でもあるため他の方式にも難しいと見ている。実際の機械学習専門家によるより良い説明があれば従いたい。
    通常LLMは存在しない論文やコードを5つ捏造するが、Phindは実在するリンクを5つ示したうえで、それらがなぜGISデータを使う論文+コードではないのかも説明してくれ、これまで受け取った回答の中で最も良かった。

    • これがコードモデルと何の関係があるのか分からない。コードモデルは論文や記事を検索するよう訓練されたものではなく、コード補完のためのものだし、関係ないタスクで幻覚を探すのはあまり興味深くない。
    • ChatGPT 4 Webブラウジング使用: https://chat.openai.com/share/19a425b5-ed37-469e-860d-65ee70...
      ChatGPT 4 Webブラウジング未使用: https://chat.openai.com/share/7e11b4a6-52f2-441a-8614-7266c3...
    • GIS作業の一部では、道路位置や建物の輪郭のような点・線・多角形のベクターデータを使い、GeoJSONやWKTのような形式で保存できる。
      一方、リモートセンシングデータや衛星画像はGeoTIFFのようなラスター形式で保存でき、実質的には地理参照情報が付いたTIFF画像である。
      入力と出力がどちらも地理空間データである衛星画像の機械学習は十分に可能だ。たとえば土地利用分類では、入力がマルチスペクトル画像で、出力は各ピクセル値が識別された土地利用を表す画像になり得る。
      衛星画像ベースの建物フットプリント検出・輪郭抽出にも機械学習を使うことができ、出力される多角形はGeoJSONとして保存可能だ。こうしたものは「地理空間データを入力と出力に使う機械学習」の例に該当すると考える。
      [1]: https://azure.microsoft.com/en-us/blog/how-to-extract-buildi...
    • EarthPTも確認してみる価値がある: https://arxiv.org/abs/2309.07207
  • 競争が増えるのは歓迎だが、まだGPT-4のほうが優れていると思う。PostgreSQLテーブルのfull_textからおおよそ最初の200語をteaserに埋めるクエリを頼んだとき、Phindは別途PL/pgSQL関数を作ってループで単語を数える回答を出し、GPT-4はgenerate_seriesSTRING_AGGで直接UPDATEするクエリを提案した。

    • 「Ignore Web Context」をオンにして実行すると、この種の設計作業では性能が上がる可能性がある。よりそれらしい回答が得られたし、一貫性は現在取り組んでいる部分だ: https://www.phind.com/search?cache=f0fkv5mxscwvagxgkuwnwgtl
    • 例ひとつだけで性能の結論を出すには不十分。
    • 簡潔にはっきり尋ねたら、UPDATE your_table SET teaser = substring(full_text from '(\S+\s*){1,200}') のような回答を得た。
    • 記事のティーザーと「続きを読む」ボタンが本当に嫌いなのだが、今ではそれがその記事を意図的に切り詰めた結果なのだと分かった。
  • 「単一ストリームで毎秒100トークンまで可能で、GPT-4はよくても毎秒20トークン程度」というのは、バッチ処理を使った結果なのか気になる。もしそうならかなり印象的
    Phind Modelが難しい質問で正解にたどり着くにはGPT-4より多くの生成試行が必要かもしれないという部分は、一部はサンプラーのチューニング問題に見える
    まだ使っていないなら、文法ベースのサンプリング(https://github.com/ggerganov/llama.cpp/pull/1773)と、mirostatdynatempのような動的サンプリング(https://github.com/LostRuins/koboldcpp/pull/464)を見るべき
    Nvidia実装でもサンプリングだけをHugging Face版に差し替えれば動きそうだし、こうした実験的機能を直接実装できることが、OpenAIから離れる大きな利点

    • H100で毎秒100トークンを達成するために、TensorRT-LLMのFlash Decodingを活用している: https://crfm.stanford.edu/2023/10/12/flashdecoding.html
    • それが印象的な数値なのか分からない。LMDeployがA100と大きなバッチサイズで毎秒2000トークン以上を主張していることを考えると、H100で毎秒100トークンはかなり遅く感じる
  • GPT-4をよく使っているが、Phindは最初に投げた複数のプログラミング作業で、驚くほどGPT-4に匹敵していた。Phindの長いコンテキストウィンドウを考えると、一部の作業ではGPT-4を超える可能性もありそうで、かなりの成果として印象的

    • ちなみにChatGPT経由のGPT-4のデフォルトのコンテキストウィンドウは、まもなく32kに変わる予定
  • Phindが拾ってきたものの出典を引用する点が良い。すべてのLLMに義務化されるべきだと思うし、だからChatGPTよりPhindを使うようによく勧めている

    • 引用しているのはLLMが「拾った」内容ではなく、検索モデルがLLMに入れた内容。実際の出力でそれを使った保証はなく、回答生成に必要な知識の全体でもない
      言語と人間の言語を学習した何百万もの例に知識が分散していて、人間が理解できる形で残っているわけでもない
    • ユーザーの立場では、リンクを吐き出されるより正解を受け取ることのほうが良い。Phindが悪いという意味ではないが、まだ初期段階のLLMに制約をかける前に、まず正しく当てられるようにすることに集中すべき
  • 以前、自分で書いたプログラムを試させてGPT-4と比較したが、Phindは自分が望んでいることをきちんと理解できず、GPT-4は完璧に理解し、そのままプロンプトを続けて完成させる準備ができていた
    https://www.phind.com/agent?cache=cloeowfla000dl1084ermly3c
    vs
    https://chat.openai.com/share/4147da33-3669-4657-88fa-3a9dfc...
    全体を代表しているとは限らないが、求めていない的外れな内容と、すでに知っている基本情報へ流れていった

    • Pair Programmerモードは現在GPT-4を使い、上限を使い切るとGPT-3.5を使う。Phind Modelを使うには、基本検索モードで再試行する必要がある
      基本検索でPhind Modelを使うとうまく動作するようだ: https://www.phind.com/search?cache=ln6dpdtv5auwn4cq1ofg3gs9
    • 問題は、比較的ニッチな問題を検索して、おそらく質の低い結果を取得することにある。検索テキストが基本モデルより大きな比重を持つが、その文脈があまり役に立たなければ、むしろ性能が悪くなる
      ChatGPTのBing検索でもこの現象は見られるし、自分のプロジェクトでも経験した
  • CodeLlamaが16kトークンまで対応しているのは驚き。トークンウィンドウは、ユーザーを記憶し、過去の会話を続けるAIを作るうえでの制約の一つ
    長い会話が数週間、数か月、数年続く未来のAIアプリでは大きなコンテキストウィンドウが核心で、今でも技術は印象的だが、本物のペアプログラマーのように過去に一緒に学んだことや作業したことをすべて記憶するようになれば、さらに興味深くなるはず
    [0] https://huggingface.co/docs/transformers/main/model_doc/llam...

    • 640kあれば誰にとっても十分
    • MemGPTのような方式でトークンウィンドウサイズが仮想化されつつあるので、その影響は小さくなるはず
    • sentence transformersのトークン平均プーリングのような中期記憶が、この用途に使われる日を待っている。どの会社の目の前にも明らかに見えているように思えるのに、誰も実装する気がないようだ
  • 人気がないのは分かっているが、これを Emacs や Vim の中で使える方法があればいいのにと思う。もう VS Code は使いたくない

    • ここ数年、VS Code に標準化されていく流れは、本当に残念な変化の一つだと思う。VS Code が存在するのは良いことだが、最高のツールを使うには VS Code を使わなければならない世界に向かっている
      Java 開発で IntelliJ がそうだったし、エコシステムにとって非常に健全ではなかったと思う。Copilot が Vim をサポートしていて本当にありがたいが、近いうちにそうではなくなるのではないかと心配している
    • Emacs への愛着の深さが、市場でもっと大きく評価されていたらよかったのにと思う
      例えば、数十人にとって100万ドルの価値があるアルバムを作るより、数千万人にとって10ドルの価値があるアルバムを作るほうがはるかに儲かるため、音楽や芸術が低い水準へ均質化していく、という論理がある
      アルバムの価格は結局10ドルに設定されるからだが、同じ現象が 開発ツール にも当てはまるのだと、今になって思うようになった
    • Vim で選択したテキストを Phind や他の LLM に送るショートカットを作ろうとして、:'<,'>y|call system('firefox ?q='.shellescape(@*).' &') までは試した
      残る問題はテキストが URL エンコード されない点で、おそらくエレガントな方法はあるはずだが、まだ見つけられていない
    • 他の人の Copilot の例を基に、ローカル LLM 向けに単純なコード補完を行う基本的な Emacs ollama API 連携 をざっくり作っておいた
      M1 Mac では推論1回あたり通常7秒ほどかかり、望むより遅いし、どんなコンテキストを送るかも非常に単純だが、それでもかろうじて使えるレベルではある
      Copilot スタイルのリクエスト・レスポンスを ollama とやり取りするために Python の façade に依存しているので公開するつもりはなかったが、興味があれば整えて出すことはできる
    • GitHub Copilot には Emacs/Vim 連携があると理解している
  • ざっと比較してみたところ結果は素晴らしく、Web 検索と参照 が付くという利点まで考えると、GPT-4 に近い一方でより高速。とはいえ、些細な不満が2つある
    ダークモードは回答本文のフォントが太すぎて明るすぎるため、長い非コード段落を読むのが難しく、ライトモードは全体的に明るすぎる。長いテキストには OpenAI のようなグレーのダーク背景や、HN のようなセピア調のライト背景のほうがよさそう
    料金ページの「1日500回以上の best model uses (GPT-4)」で、GPT-4 が何を意味するのかも分かりにくい。Phind が GPT-4 の競合だと発表しながら、同時に GPT-4 の利用量を料金に記載しているのは奇妙に感じる

    • 回答モデルとして GPT-4 もサポートしており、ユーザーが用途に合わせて選べる。ただし大多数のユーザーには Phind Model を推奨している