スーパープラットフォームは、AI セルフホストの時代に開発者に力を取り戻すことを目的としています。独自の AI プラットフォームをホストします。
スーパープラットフォームを実行する最も簡単な方法は、Docker を使用することです。 Docker がない場合はインストールします。リポジトリのルートにステップインし、次の操作を行います。
docker compose up
プラットフォームをフォアグラウンドで実行します。 Ctrl+C を押すと実行が停止します。バックグラウンドで実行したい場合:
docker compose up -d
スーパープラットフォームが実行されているので、それを操作するためのオプションがいくつかあります。
http://127.0.0.1:3901
にアクセスし、ユーザー名singulatron
とパスワードchangeme
でログインし、ChatGPT を使用するのと同じように使用を開始できます。
大きな「AI」ボタンをクリックして、まずモデルをダウンロードします。心配しないでください。このモデルは再起動後も保持されます (docker-compose.yaml のボリュームを参照)。
簡潔にするために、以下の例では、UI に移動し、モデルがすでにダウンロードされていることを前提としています。 (これはクライアントでも実行できますが、時間がかかります)。
JS で同期プロンプトを実行してみましょう。プロジェクトの実行で
npm i -s @superplatform/client
package.json
に"type": "module"
が含まれていることを確認し、次のスニペットをindex.js
に追加します。
import { UserSvcApi , PromptSvcApi , Configuration } from "@superplatform/client" ;
async function testDrive ( ) {
let userService = new UserSvcApi ( ) ;
let loginResponse = await userService . login ( {
request : {
slug : "singulatron" ,
password : "changeme" ,
} ,
} ) ;
const promptSvc = new PromptSvcApi (
new Configuration ( {
apiKey : loginResponse . token ?. token ,
} )
) ;
let promptRsp = await promptSvc . addPrompt ( {
request : {
sync : true ,
prompt : "Is a cat an animal? Just answer with yes or no please." ,
} ,
} ) ;
console . log ( promptRsp ) ;
}
testDrive ( ) ;
そして走ります
$ node index.js
{
answer: ' Yes, a cat is an animal.n ' +
' n ' +
' But if you meant to ask whether cats are domesticated animals or pets, then the answer is also yes. Cats belong to the Felidae family and are common household pets around the world. They are often kept for companionship and to control rodent populations. ' ,
prompt: undefined
}
システムによっては、AI が応答するまでに時間がかかる場合があります。時間がかかる場合は、処理中のバックエンド ログを確認すると、次のような内容が表示されるはずです。
superplatform-backend-1 | { " time " : " 2024-11-27T17:27:14.602762664Z " , " level " : " DEBUG " , " msg " : " LLM is streaming " , " promptId " : " prom_e3SA9bJV5u " , " responsesPerSecond " :1, " totalResponses " :1}
superplatform-backend-1 | { " time " : " 2024-11-27T17:27:15.602328634Z " , " level " : " DEBUG " , " msg " : " LLM is streaming " , " promptId " : " prom_e3SA9bJV5u " , " responsesPerSecond " :4, " totalResponses " :9}
superplatform-backend-1 | { " time " : " 2024-11-27T17:27:16.602428481Z " , " level " : " DEBUG " , " msg " : " LLM is streaming " , " promptId " : " prom_e3SA9bJV5u " , " responsesPerSecond " :5, " totalResponses " :17}
superplatform-backend-1 | { " time " : " 2024-11-27T17:27:17.602586968Z " , " level " : " DEBUG " , " msg " : " LLM is streaming " , " promptId " : " prom_e3SA9bJV5u " , " responsesPerSecond " :6, " totalResponses " :24}
superplatform-backend-1 | { " time " : " 2024-11-27T17:27:18.602583176Z " , " level " : " DEBUG " , " msg " : " LLM is streaming " , " promptId " : " prom_e3SA9bJV5u " , " responsesPerSecond " :6, " totalResponses " :31}
superplatform-backend-1 | { " time " : " 2024-11-27T17:27:19.602576641Z " , " level " : " DEBUG " , " msg " : " LLM is streaming " , " promptId " : " prom_e3SA9bJV5u " , " responsesPerSecond " :6, " totalResponses " :38}
superplatform-backend-1 | { " time " : " 2024-11-27T17:27:20.602284446Z " , " level " : " DEBUG " , " msg " : " LLM is streaming " , " promptId " : " prom_e3SA9bJV5u " , " responsesPerSecond " :6, " totalResponses " :46}
superplatform-backend-1 | { " time " : " 2024-11-27T17:27:21.602178149Z " , " level " : " DEBUG " , " msg " : " LLM is streaming " , " promptId " : " prom_e3SA9bJV5u " , " responsesPerSecond " :6, " totalResponses " :53}
superplatform-backend-1 | { " time " : " 2024-11-27T17:27:22.602470024Z " , " level " : " DEBUG " , " msg " : " LLM is streaming " , " promptId " : " prom_e3SA9bJV5u " , " responsesPerSecond " :6, " totalResponses " :61}
superplatform-backend-1 | { " time " : " 2024-11-27T17:27:23.174054316Z " , " level " : " INFO " , " msg " : " Saving chat message " , " messageId " : " msg_e3SARBJAZe " }
superplatform-backend-1 | { " time " : " 2024-11-27T17:27:23.175854857Z " , " level " : " DEBUG " , " msg " : " Event published " , " eventName " : " chatMessageAdded " }
superplatform-backend-1 | { " time " : " 2024-11-27T17:27:23.176260122Z " , " level " : " DEBUG " , " msg " : " Finished streaming LLM " , " error " : " <nil> " }
スーパープラットフォームは、2013 年に私が Hailo という Uber の競合会社で働いていたときに初めて思いついたマイクロサービス プラットフォームです。私はそのアイデアを棚上げし、最終的には他の誰かがそれを構築するだろうと考えていました。 AI ブームが起こり、これから展開される AI アプリの数々を考えると、誰も作っていないので、自分で構築する必要があることに気づきました。
これはサーバーとエコシステムであり、AI モデルを自己ホストし、それらのモデルを任意の言語で活用するアプリを構築し、多様なプロジェクトをサポートするように設計されたマイクロサービス ベースの共通バックエンドを利用することができます。
開始するには、このページを参照してください。
https://superplatform.ai/docs/category/superplatform-api/ を参照してください。
デスクトップ版の配布を一時停止させていただきました。ソフトウェアを実行する別の方法については、このページを参照してください。
スーパープラットフォームは AGPL-3.0 に基づいてライセンスされています。