Hugging Face上の生成AIモデルと、Laravelで開発したWebアプリをServerless Inference APIを使って連携する方法を解説します。こちら無料で利用できます。
なお詳しい手順はYoutube動画で解説しているので、併せてご覧ください。本記事では、動画内で使用したコードをご紹介します。
↓↓↓
Hugging Face上の生成AIモデルとLaravelを無料でAPI連携(Serverless Inference API・Mistral AI利用)
Hugging Face上にあるモデルと無料でAPI連携する方法は、下記ページに記載されています。

無料でAPI連携ができるモデルは限られています。また変更される可能性があります。なので、無料版APIは自分用のテストなどに使うのが良いかと思います。
今回は、HuggingFace上にある下記のMitstral AIモデルとAPI連携をします。日本語対応しているため、選択しました。
コントローラの作成
Laravelで新規プロジェクトを作成します。Laravelプロジェクトの環境構築やインストールについては、こちらご覧ください。
次にライブラリをインストールしておきます。
composer require guzzlehttp/guzzle
その後、コントローラを作成します。
php artisan make:controller HuggingFaceController
作成したコントローラには下記のコードをいれます。
【HuggingFaceController】
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use GuzzleHttp\Client;
class HuggingFaceController extends Controller
{
public function getPrediction()
{
$client = new Client([
'base_uri' => 'https://api-inference.huggingface.co/models/mistralai/Mistral-Nemo-Instruct-2407',
'headers' => [
"Authorization" => "Bearer HuggingFaceトークン",
"Content-Type" => "application/json"
]
]);
$userMessage = request('message', "白菜を使ったレシピはどんなものがありますか。");
$prompt = "あなたは親切で有能なアシスタントです。\n\nUser: {$userMessage}\nAssistant:";
$response = $client->post('', [
'json' => [
'inputs' => $prompt,
'parameters' => [
'max_new_tokens' => 128,
'temperature' => 0.3,
],
],
]);
$result = json_decode($response->getBody(), true);
return view('prediction', ['response' => $result[0]['generated_text']]);
}
}

HuggingFaceトークンの取得方法が分からない、などあれば動画を見てくださいね。
ビューファイルの作成
次にビューファイルを作ります。resources/viewsの中にprediction.blade.phpファイルを作り、下記コードをいれます。
【prediction.blade.php】
<!DOCTYPE html>
<head>
<meta charset="UTF-8">
<title>生成AIレスポンス</title>
</head>
<body>
<h1>生成AIレスポンス</h1>
<h2>Generated Text:</h2>
<p>{{ $response }}</p>
</body>
</html>
ルート設定の追加
最後に、routes/web.phpに、下記のルート設定を追加します。
Route::get('/huggingface/prediction', [App\Http\Controllers\HuggingFaceController::class, 'getPrediction']);
テスト
ブラウザにLaravelプロジェクトを開き、/huggingface/predictionパスをいれてみてください。

うまくいったら、質問部分を変えたりしてみてくださいね。
公式ページ
公式ページはこちら。併せて参考にしてください。
さいごに
なおHugging Faceでは今回ご紹介した方法以外にも、API利用方法があります。APIエンドポイントを作成する方法ですが、こちらはまた別の記事でご紹介しようかと思っています。
Hugging Faceについてや、Hugging Face上の生成AIモデルの利用方法の比較表は、下記の記事をご覧ください。





コメント