🤖

Positron Assistant: データサイエンティスト向けのAIアシスタント機能

に公開

先日、Posit社(旧RStudio)が開発する、データサイエンティスト向けの新しい統合開発環境「Positron 」が正式にリリースされました。最初のリリースバージョンは 2025.07.0-204 となります[1]

本記事では、このPositronにプレビュー機能として搭載されたAIアシスタント「Positron Assistant」について解説します。また、既存のAIエージェントであるClaude CodeやGemini CLIとの違い・差別化について個人的に感じたことを記述します。

なお、Positron自体の詳細については、@yutannihilationさんの紹介記事が参考になりますので、ぜひご覧ください。

Posit 2025.07.0-204 の起動画面の例。VSCodeやRStudioから移行する人向けのガイドも用意された

また、RStudioのターミナルを介してGemini CLIを利用する方法を @MITTI12101 さんが書いています。まずはGemini CLI自体を体験したい方はこちらも参考にどうぞ。

導入

https://positron.posit.co/assistant.html

Positron Assistantは、Positronに統合されたAIアシスタント機能です。現在、AI搭載エディタにはCursorやWindsurf、VSCode拡張機能のGitHub Copilot、CLIツールのClaude CodeやGemini CLIなど、多くの選択肢があります。Positron Assistantもこれらと同様、大規模言語モデル(LLM)を活用して、コード生成、リファクタリング、デバッグ支援、作業提案などを行います。

「それなら、他のツールでも良いのでは?」と思うかもしれません。しかし、Positron Assistantの強みは、データサイエンスのワークフローに特化している点にあります。Positronは、RやPythonといった言語に最適化されたプロジェクト機能、変数管理、プロットパネルなどを標準で備えています。Positron Assistantはこれらの機能と深く連携し、単にコードを解析するだけでなく、Positron上で実行中の変数やプロットといったコンテキストを直接参照できます。これにより、より的確で高度なサポートが期待できます。

利用準備

利用条件と必要なもの

利用にあたり、Posit公式のサポートおよび利用規約を一読ください。

準備するものは以下の通りです。

設定方法

まずは Positron Assistant を有効化します。以下の2ステップで完了します。

  1. メニュー等から設定画面を開く
  2. 設定項目として positron.assistant.enable を検索し、チェックボックにチェックを付けてPositronを再起動

次に、LLMを提供するモデルプロバイダーの設定を行います。現在候補となるプロバイダー一覧を以下の表に整理します。

プロバイダー 認証方法 利用方法
Anthropic API チャット
Gemini Code Assistant API チャット
GitHub Coplit OAuth 入力補完
Ollama 将来実装? -

プロバイダーとの契約、APIキーの発効は各自で行います。認証方法はAPIキーまたはOAuthにより行います。なお、ローカル環境でLLMを動作させるOllamaがプロバイダー候補に出てくるのですが、こちらの環境では利用できませんでした。将来実装でしょうか。期待です。

今回は、お試し利用に適した Gemini Code Assistant を用いた例を紹介します(※プロンプト等が学習データとして利用されることに同意することで、無料で利用可能です)。私はGoogle AI StudioでAPIキーを発行しました。

コマンドパレットを立ち上げ、「Positron Assistant: Add Language Model」と検索しましょう。するとプロバイダー選択のダイアログが表示されるので、任意のプロバイダーを選択の上、APIキーを入力、サインインします。

発効したAPIキーを入力して認証を行う

Positron Assistantの主な機能

Assistantを有効にすると、サイドバーとステータスバーに「🤖ロボット」のアイコンが表示されます。これがAssistantの目印です。

赤色矢印で示すアイコンがPosit Assistant

Positron Assistantの用途は以下の2つに分かれます。ユーザとの対話、指示に基づくコード生成を行うチャットと、編集中のコード内容に対する入力補完です。さらにチャット機能は、コンテキストを渡したり、複雑な指示を出せる基本機能の他に、編集中のコード内容に対するインラインチャット(Colaboratoryでおなじみ)の2つがあります。

チャット

サイドバーから立ち上げるチャットは、Clineに慣れている人は見慣れたインターフェイスです。画面下部のテキスト入力ボックスにプロンプトを入力します。

チャットには、AskEditAgentの3つのモードが用意されています。

  • Ask: コードに関する質問や説明を求める
  • Edit: AIにファイルを編集してもらう
  • Agent: プログラムを実行する

基本的には編集中のファイルがコンテキストとして参照されますが、複数のファイルやスクリーンショットを追加で読み込ませることも可能です。

入力補完

この機能は、編集中のコード内容をもとに、コード入力を支援するものです。AIがよしなにコードの提案をしてくれるため、(思うようにサジェストされないことも多々ありますが...)入力の手間が減少します。

RやPythonだけでなく、Markdownの編集にも対応しますが、プロバイダーをGitHub Copilotにしておく必要があります(Gemini Code Assistantでも有効?)。

チャットを試してみた

それでは、実際にチャットを介してPosit Assistantの機能を試していきます。
Rのファイルを新規作成(例としてsample.Rとします)し、 df というオブジェクトを作成してみて、それについて質問します。質問なので、Askモードで実行します。

df <- 
    readr::read_csv("https://raw.githubusercontent.com/uribo/tokupon_ds/refs/heads/main/data-raw/tokushima_zoo_animals22.csv")

Assistantがコードを実行し、データの内容を要約してくれました。読み込んでいるcsvファイルは https://github.com/uribo/tokupon_ds/blob/main/data-raw/tokushima_zoo_animals22.csv です。きちんと処理されています。

次に、コードの生成を依頼してみましょう。提案されたコードは、ワンクリックでファイルに挿入したり、コンソールで直接実行したりできます。

さらに強力なのが、環境内のオブジェクトを直接コンテキストとして渡す機能です。チャットパネルで Add Context... から Symbols... を選択すると、R環境で定義済みのオブジェクト(dfなど)をLLMに直接参照させることができます。これにより、モデルがデータの中身を正確に把握できるため、より複雑で的を射た指示が可能になります。データを変更して実行してみました。

Claude CodeやGemini CLIとの比較

既存の拡張機能として、Claude Code、Gemini CLIが存在します。Claude Codeについてはサブスクリプション契約で利用しています。そのため、Posit Assistantで利用するAPIとは異なる形態でLLMを利用することになります。

これらの拡張でも編集中のファイルの内容をコンテキストに与えられます。しかし、セッション中に定義したオブジェクトに対して指示を出すことは、現状、困難に感じています。

Claude Codeでは、実装の大部分を任せることがありますが、Posit Assistantはその名の通り「アシスタント」として留まる印象です。それは、想定利用者が第三者に客観的な根拠を提供するデータサイエンティストであることからも納得できる点です。

また、今回は踏み込みませんでしたが、Posit AssistantでもMCPとの連携ができたり、スラッシュコマンドが用意されています。その意味でも、試行錯誤が求められるデータサイエンスの領域を補助するツールとしてPosit Assistantがつけ込む領域はあると思います。特にOllamaなどのローカルLLMとの連携ができれば、データ収集の心配がなくなるので期待しています。

プレビュー版なので、今後、Ollama対応を含めて大きな変更がありそうですが、現時点でも基本的な機能が整っています。正式リリースのPositronと合わせて一緒に活用していきたいですね。

Enjoy!

脚注
  1. GitHub上のリリースページ https://github.com/posit-dev/positron/releases/tag/2025.07.0-204 ↩︎

Discussion