Codestral: Mistral AIの新しいオープンソースLLMは、コーディング用にトレーニングされました

Mistral AIの新しいLLM(Large Language Model)がコーディング向けにトレーニングされました、この記事を読んで詳細を確認してください!

Anakin AIを無料で利用開始

Codestral: Mistral AIの新しいオープンソースLLMは、コーディング用にトレーニングされました

Start for free
目次

Codestralは、Mistral AIが開発したコード生成モデルの最新イノベーションです。このジェネラティブAIモデルは、コードの作成と操作を支援するために明示的に設計されており、以前のモデルと比べてパフォーマンスと多機能性が大幅に向上しています。この記事では、Codestralの特徴、他のMistralモデルとの違い、パフォーマンスのベンチマーク、およびインストールと使用方法の詳細なガイドについて探っていきます。

💡
AIの最新トレンドに興味はありますか?

それなら、Anakin AIを見逃すことはできません!

Anakin AIは、ワークフローの自動化のためのオールインワンプラットフォームです。簡単なノーコードApp Builderを使用して、強力なAIアプリを作成します。- Llama 3ClaudeGPT-4Uncensored LLMsStable Diffusionanceなど...

数分で夢のAIアプリケーションを構築しましょう!Anakin AIで数週間ではなく、数分で実現できます!
Anakin AI: Automate Your AI Tasks with Ease
Anakin AI: No CodeでAIのワークフローを自動化

Codestralとは何ですか?

Codestralは、コード生成タスクに特化したオープンな重み付けジェネラティブAIモデルです。 "オープン重み付け"とは、モデルの学習済みパラメータが研究や非営利目的で自由に利用できることを意味し、アクセシビリティとカスタマイズ性が向上しています。Codestralは、Python、Java、C、C++、JavaScript、Bashなどの人気のあるプログラミング言語だけでなく、SwiftやFortranなどの特殊な言語を含む80以上のプログラミング言語を網羅した多様なデータセットでトレーニングされています。この幅広いトレーニングにより、Codestralはさまざまなコーディング環境とプロジェクトで開発者をサポートすることができます。

Codestralの主な特徴

  • 80以上のプログラミング言語に対する流暢な対応: Codestralは幅広い言語をサポートし、さまざまなプロジェクトに対応することができます。
  • コード生成: コードの関数補完、テストケース生成、欠落したコードセグメントの埋め込みなど、タスクの自動化が可能です。
  • 中央埋め込みメカニズム: 中央埋め込みにより、部分的なコードを補完して、コード補完のタスクを強化することができます。
  • オープン重み付け: モデルのパラメータは研究や非営利目的で自由にアクセスでき、共同環境を促進します。
  • パフォーマンスと効率性: 32kトークンの大きなコンテキストウィンドウを持つCodestralは、コード生成のパフォーマンスとレイテンシの新たな基準を設定します。

Codestralは他のMistralモデルとどのように異なりますか?

Mistral AIは数多くのモデルを開発していますが、Codestralはコード生成に特化したユニークなモデルです。以下にいくつかの主な違いを示します:

  • 専門化: 一般的なモデルとは異なり、Codestralはコーディングタスクに特化しており、この領域でより効率的かつ正確に動作します。
  • パラメータのサイズ: Codestralは220億のパラメータを誇り、他の多くのモデルよりも大きくなっています。これにより、より複雑なコーディングタスクを処理することができます。
  • コンテキストウィンドウ: 32kトークンのコンテキストウィンドウを持つCodestralは、他のコンテキストウィンドウが小さいモデルと比較して、より長く、より複雑なコードシーケンスを管理することができます。

パフォーマンスベンチマーク

CodestralはGPT-4、Llama 3、Mistral 7Bなどの主要なAIモデルと厳格にテストされています。以下の表は、さまざまなベンチマークにおけるCodestralのパフォーマンスをまとめたものです:

モデル HumanEval Pass@1 MBPP Sanitized Pass@1 CruxEval RepoBench EM Spider (SQL)
Codestral 22B 73.75 85.60 90.45 88.30 92.10
GPT-4 72.05 84.50 89.00 87.00 91.00
Llama 3 70B 70.00 82.00 87.50 85.00 89.50
Mistral 7B 65.00 78.00 83.00 80.00 85.00

Codestralは、すべてのベンチマークで競合他社よりも優れたパフォーマンスを発揮し、コード生成タスクでの優れた能力を示しています。

Codestralのインストール方法

Codestralのインストールは簡単であり、さまざまな開発環境に統合できます。以下は、Codestralのインストールと使用方法の手順とサンプルコードです。

インストール手順

  1. Codestralのダウンロード: CodestralはHuggingFaceからダウンロードするか、MistralのAPIエンドポイントからアクセスできます。
  2. APIキーの設定: Mistral AIのLa PlateformeからAPIキーを取得します。
  3. 必要な拡張機能のインストール: VSCodeまたはJetBrains用に、ContinueまたはTabnineの拡張機能をインストールします。
  4. APIキーの設定: APIキーを設定ファイルに追加します。

例:Continue.devを使ったCodestralのセットアップ

{
  "models": [
    {
      "title": "Codestral",
      "provider": "mistral",
      "model": "codestral-latest",
      "apiKey": "[API_KEY]"
    }
  ],
  "tabAutocompleteModel": {
    "title": "Codestral",
    "provider": "mistral",
    "model": "codestral-latest",
    "apiKey": "[API_KEY]"
  }
}

サンプルコード

Pythonの例:フィボナッチ数列の関数

import os
from mistralai.client import MistralClient
from mistralai.models.chat_completion import ChatMessage

api_key = os.environ["MISTRAL_API_KEY"]
client = MistralClient(api_key=api_key)
model = "codestral-latest"

messages = [
    ChatMessage(role="user", content="フィボナッチの関数を書いてください")
]

chat_response = client.chat(
    model=model,
    messages=messages
)

print(chat_response.choices.message.content)

Curlの例:中央埋め込み

curl --location 'https://api.mistral.ai/v1/fim/completions' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header "Authorization: Bearer $MISTRAL_API_KEY" \
--data '{
  "model": "codestral-latest",
  "prompt": "def fibonacci(n: int):",
  "suffix": "n = int(input('Enter a number: '))\nprint(fibonacci(n))",
  "max_tokens": 64,
  "temperature": 0
}'

開発ツールとの統合

Codestralは、人気のある開発ツールにシームレスに統合でき、コーディングエクスペリエンスを向上させます。

VSCodeの統合

  1. Continue拡張機能のインストール: VSCode用のContinue拡張機能をインストールするための手順に従います。
  2. Codestralの設定: プロバイダとしてMistral APIを選択し、モデルとしてCodestralを選択します。
  3. Codestralの使用: VSCode内でコード生成と補完のためにCodestralを利用します。

JetBrainsの統合

  1. Tabnine拡張機能のインストール: JetBrains用のTabnine拡張機能をインストールするための手順に従います。
  2. Codestralの設定: Tabnine Chat AppでモデルとしてCodestralを選択します。
  3. Codestralの使用: JetBrains内でコード生成と補完のためにCodestralと対話します。

まとめ

Codestralは、コード生成モデルの分野での重要な進歩を表しています。その専門的なデザイン、幅広い言語サポート、優れたパフォーマンスにより、開発者にとって貴重なツールとなっています。Codestralを開発環境に統合することで、コーディングの効率を向上させ、エラーを減らし、ワークフローをスムーズにします。シンプルなスクリプトから複雑なプロジェクトまで、Codestralはあなたのすべてのステップでサポートする準備が整っています。