Closed4
memo @240209*
将来的にnpm
を置き換えるようなものになるかも。名前的にもjsr(JavaScript Repository )
の方がnpm(node package manager)
よりも適切。npm
はもともとNode.js
のパッケージマネージャーということでNode.js
のものだった。JS
が元々サーバーサイドで動くようなものではなかったけどもサーバーサイドでも動くようにしようと生まれたのがNode.js
でそのときに他の人が作ったものを簡単に使い回せるような仕組みとしてレジストリが必要として作られたのがnpm
だった。そしてNode.js
は仕様的に特殊で普通のJavaScript
じゃない仕様も入っててそういう環境差異をなくそうと生まれたのがECMAScript
。ES Modules
の形式にするのがいまは当たり前になってるし、そうなるとNode.js
という言葉に違和感がある。いまはReact
のライブラリとかも基本的にはnpm
を介してインストールするけどもNode.js
じゃない。Node.js
のものもあるけどもブラウザ側でしか使用しないようなものもnpm
からダウンロードするというのは名前的におかしいしjsr
の方が今を表してる。
Vercel
Vercel SDK
のアップデータのお知らせ。
Vercel
の管理画面にAI
のプレイグラウンドが出た。
Vercel AI SDK
を使って簡単にAIモデルを使用できる。
具体的にはNext.js
を使ってPerplexity API
と疎通したかったらこのように書ける。
Vercel AI SDK
はAIモデルのORM
のようなもの。統一された記法によってAIモデルと接続できる。
app/api/chat/route.ts
import { OpenAIStream, StreamingTextResponse } from 'ai';
import OpenAI from 'openai';
const perplexity = new OpenAI({
apiKey: process.env.PERPLEXITY_API_KEY || '',
baseUrl: 'https://api.perplexity.ai',
});
export async function POST(req: Request) {
const { messages } = await req.json();
// Generated a chat completion based on the prompt
const response = await perplexity.chat.completions.create({
model: 'pplx-7b-chat',
stream: true,
messages: messages,
});
// Convert the response into a friendly text-stream
const stream = OpenAIStream(response);
// Respond with the stream
return new StreamingTextResponse(stream);
}
このスクラップは2024/02/09にクローズされました