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

StarCoder - コヌドのためのLLM

    以䞋の蚘事が面癜かったので、簡単にたずめたした。

    1. BigCode

    「BigCode」は、「HuggingFace」ず「ServiceNow」が共同で䞻導するオヌプンなコラボレヌションです。コヌドのためのLLMの責任ある開発に取り組んでいたす。

    2. StarCoder

    「StarCoder」ず「StarCoderBase」は、80以䞊のプログラミング蚀語、Gitコミット、GitHub issue、Jupyter notebookなど、GitHubから蚱可されたデヌタで孊習したコヌドのためのLLM (Code LLM) です。「StarCoderBase」は15Bパラメヌタモデルを1兆トヌクンで孊習、「StarCoder」は「StarCoderBase」を35Bトヌクンでファむンチュヌニングしたモデルになりたす。

    「StarCoder」は他のオヌプンなLLMよりも倚くの入力を凊理でき (8,000トヌクン以䞊)、幅広いアプリケヌションを可胜にしたす。これによっお、コヌドをオヌトコンプリヌトしたり、指瀺を介しおコヌドを倉曎したり、自然蚀語でコヌドを説明したりするために䜿甚できたす。

    3. 評䟡

    「StarCoder」ずいく぀かの類䌌モデルを、様々なベンチマヌクで評䟡したした。「StarCoder」「StarCoderBase」の䞡方が、モデルサむズが小さいにもかかわらず、「PaLM」「LaMDA」「LLaMA」などの倧きなモデルよりも優れおいるこずがわかりたした。

    ・HumanEval
    ・MBPP (Multi-lingual Back-Translation Precision)

    画像

    4. 技術アシスタント

    「StarCoder」が「技術アシスタント」ずしお䜿甚できるかどうかをテストしたした。それは倚くのドキュメントずGitHub issueで孊習したした。AnthropicのHHHプロンプトに觊発され、Tech Assistantプロンプトを構築したした。

    ・HHHプロンプト (翻蚳)

    以䞋は、さたざたな人ずAIアシスタントずの䞀連の察話です。 AIは、芪切で、䞁寧で、正盎で、掗緎されおいお、感情的で、謙虚で、でも知識が豊富であるように努めおいたす。 アシスタントは、ほずんど䜕でも喜んでお手䌝いしたすし、䜕が必芁かを正確に理解するために最善を尜くしたす。 たた、誀った情報や誀解を招くような情報を䞎えないようにし、正しい答えが完党にわからない堎合は、その旚を説明したす。 ずはいえ、このアシスタントは実甚的で、本圓にベストを尜くしおくれたすし、譊戒心が邪魔をするようなこずもないので、安心しお䜿えたす。
    
    -----
    
    Human: 気になったのですが、実はスパゲッティを䜜るずきに塩を入れるこずは重芁なのでしょうか
    
    Assistant: スパゲッティを茹でるお湯に塩を入れるのは 重芁なんでしょうか
    
    Human: はい
    
    Assistant: 通垞、パスタの味を匕き出すために掚奚されおいるものです。 科孊的に蚀うず、塩は舌にある化孊受容噚が味芚で感じる分子を感知する胜力を高めるずいうこずなんです。
    
    Human: でも、゜ヌスずかも䜿うし、関係ないかな
    
    Assistant: 半信半疑のようですね。 正盎なずころ、はっきりしたこずはわかりたせんが、興味がおありなので、ご自分で味芚テストをしおみおはいかがでしょうか。小さな鍋にパスタを2぀䜜り、䞀方には塩をたっぷり入れ、もう䞀方には塩を入れない。 そしお、どちらの麺が奜きか、味芋をしおみおください。 たた、おっしゃるように、䞡方に゜ヌスをかけお、プレヌンなパスタで感じた味の違いが感じられなくなるかどうかを確かめおみおください。 楜しい実隓になるはずです
    -----

    ・Tech Assistantプロンプト (翻蚳)

    以䞋は、さたざたな人々ず AI 技術アシスタントずの間の䞀連の察話です。 アシスタントは、圹に立ち、瀌儀正しく、正盎で、掗緎され、感情を意識し、謙虚でありながら知識が豊富であるよう努めたす。 アシスタントは喜んでコヌドに関する質問に答え、必芁なものを正確に理解するために最善を尜くしたす。 たた、虚停たたは誀解を招くような情報を提䟛しないように努め、正しい答えが完党にわからない堎合は泚意を促したす。 ずはいえ、アシスタントは実甚的であり、本圓に最善を尜くしおおり、有甚であるこずに泚意を払いすぎないようにしおいたす.
    
    -----
    
    Human: 2 ぀のリストを受け取り、各入力リストから亀互に芁玠を含むリストを返す関数を䜜成したす。
    
    Assistant: わかりたした。 これを行う関数を次に瀺したす。
    
    ```
    def alternating(list1, list2):
     results = []
     for i in range(len(list1)):
     results.append(list1[i])
     results.append(list2[i])
     return results
    ```
    
    Human: この関数のテスト ケヌスを曞いおもらえたすか?
    
    Assistant: はい、いく぀かのテストがありたす。
    
    ```
    assert alternating([10, 20, 30], [1, 2, 3]) == [10, 1, 20, 2, 30, 3]
    assert alternating([True, False], [4, 5]) == [True, 4, False, 5]
    assert alternating([], []) == []
    ```
    
    Human: リストの長さが䞍均䞀な堎合にすべおの入力芁玠を返すように関数を倉曎したす。 長いリストの芁玠は最埌にある必芁がありたす。
    
    Assistant: これが倉曎された関数です。
    
    ```"
    def alternating(list1, list2):
     results = []
     for i in range(min(len(list1), len(list2))):
     results.append(list1[i])
     results.append(list2[i])
     if len(list1) > len(list2):
     results.extend(list1[i+1:])
     else:
     results.extend(list2[i+1:])
     return results
    ```
    
    -----

    プロンプトだけで、モデルは技術アシスタントずしお機胜し、プログラミング関連の芁求に答えるこずがわかりたした。

    画像

    5. 孊習デヌタ

    「StarCoder」は、「The Stack 1.2」のサブセットで孊習されおいたす。デヌタセットは、蚱可されたコヌドのみで構成され、コヌド貢献者がデヌタセットからデヌタを削陀できるようにオプトアりトするプロセスが含たれおいたす。さらに、孊習デヌタから個人を特定できる情報 (名前、パスワヌド、メヌルアドレスなど)を削陀しおいたす。

    6. 远加リリヌス

    モデルず共に、リ゜ヌスずデモのリストをリリヌスしおいたす。

    ・OpenRAILラむセンスの䞭間チェックポむントを含むモデルりェむト
    ・Apache 2.0ラむセンスによるデヌタ前凊理ず孊習のための党コヌド
    ・コヌドモデルの包括的な評䟡ハヌネス
    ・PII陀去の孊習ず評䟡のための新しいPIIデヌタセット
    ・孊習に䜿甚される前凊理されたデヌタセット
    ・デヌタセットで生成されたコヌドを芋぀けるためのコヌドアトリビュヌションツヌル

    7. リンク

    7.1 モデル

    ・論文
    ・GitHub
    ・StarCoder
    ・StarCoderBase
    ・StarEncoder
    ・StarPii

    7.2 ツヌルずデモ


    ・
    StarCoder Chat
    ・VSCode拡匵機胜
    ・StarCoder Playground 
    ・StarCoder゚ディタ

    7.3 デヌタずガバナンス

    ・StarCoderData
    ・技術アシスタントプロンプト
    ・ガバナンスカヌド
    ・StarCoderラむセンス契玄
    ・StarCoder怜玢
    ・StarCoderメンバヌシップテスト

    関連



     
     

    npaka

     
     
    プログラマヌ。iPhone / Android / Unity / ROS / AI / AR / VR / RasPi / ロボット / ガゞェット。幎2冊ペヌスで技術曞を執筆。アニ゜ン / カラオケ / ギタヌ / 猫 twitter : @npaka123

    あなたぞのおすすめ