Morph

AI ファンクション - ローンチウィーク #2

ローンチウィーク
2024-12-17
三橋 啓多
Co-founder, COO

本日は、Morph上でOpen AIやAnthropicなどのLLMのAPIを活用して、組織のワークフローに適したAIツールを構築する方法と、そのための機能群についてご紹介します!

MorphのPythonレイヤーでAI SDKを利用する

Morphでは、Pythonレイヤーを通じてOpen AIやAnthropicのPython SDKを直接活用することができます。この仕組みにより、モデルへのAPIリクエストや応答処理を細かく制御しながら、ワークフローに最適化されたAIツールを構築することが可能です。

たとえば、特定のビジネスニーズに合わせてシステムプロンプトを設計し、データ入力や応答のフォーマットを柔軟にカスタマイズできます。また、Python環境内でのスクリプト実行により、開発者は既存のコードやライブラリと統合しやすい構造となっています。

AI SDKは、以下のようなコードで簡単に実行することができます。

@morph.variables("prompt")
def main(context: MorphGlobalContext):
    client = OpenAI(api_key=os.environ.OPENAI_API_KEY)
    prompt = context.vars["prompt"]
    response = client.chat.completions.create(
        model="gpt-4o",
        messages=[{"role": "user", "content": prompt}],
        stream=True,
    )

    for c in response:
        yield create_chunk(c.model_dump()["choices"][0]["delta"].get("content", ""))

AIに自社データを与える方法

Morphの強力なデータ連携機能を利用すれば、自社のデータをLLMに組み込むことができます。たとえば、Snowflakeに格納されたデータをSQLで取得し、それをAIに参照させて回答を作らせることが可能です。

@morph.func
@morph.variables("prompt")
def main(context: MorphGlobalContext):
    prompt = context.vars["prompt"]

    response = text_to_sql(
        prompt=prompt,
        api_key=os.environ["OPENAI_API_KEY"],
        model="gpt-4o",
        table_names=["SALES_DATA", "ORDER_DATA", "CUSTOMER_DATA"],
        connection="Snowflake",
        schema_name="PUBLIC"
    )

		yield create_chunk(response.code)

		df = execute_sql(response.code, "Snowflake")

		yield create_chunk(df.to_markdown())

ユーザーの要求に応じてデータ分析を実行する

これらの機能により、ユーザーのインプットに応じて、自社のデータを参照し、AIがデータ分析を実行するダッシュボードを簡単に構築することができます。

たとえば、自社データを参照したAIに、インタラクティブなチャートを生成させることができます。以下はコード例です。

@morph.func
@morph.variables("prompt")
@morph.load_data("customer_logs")
def chat(context: MorphGlobalContext):
    prompt = context.vars["prompt"]
    customer_logs = context.data["customer_logs"]

    response = text_to_plotly(
        prompt=prompt,
        api_key=os.environ["OPENAI_API_KEY"],
        model="gpt-4o",
        df=customer_logs,
    )

    yield create_chunk(response.code, response.content)
export const title = "Chat";

<LLM
    postData="chat"
    layout="side-by-side"
    height={300}
/>

このように、とても短くシンプルなコードでAIアナリストを実現することができます。従来のBIと異なり、事前に設計・構築された分析以外のことであっても、要求に応じて柔軟に行ってくれることが強みです。

インパクト

最新のAIモデルを用いて、ビジネスワークローの効率化や改善を実現することは、多くの人々の望むところです。ところが、実際に業務で使おうとするとカスタマイズが必要なことに気がつくでしょう。

AIをカスタマイズするために、多くのNo-Codeツールが提供されていますが、究極的な柔軟性を手にいれるためには、コードを書いてカスタマイズする必要があります。Morphはコードベースのツールであるからこそ、これを実現することができます。

データを取り込んでAIに与えたり、複数のAIモデルを組み合わせたり、出力結果を調整したりすることで、ビジネスにおいて真に有用なAIツールを手に入れることができます。

Morphを使ってAIツールを構築することで、成果物を即座にチームメンバーに共有して、すぐに使い始めることができます。インフラの構築やデプロイに時間を取られることがありません。

業務フローにあったAIツールを構築し、すぐにチームで使い始めることができます。


関連記事