Heli

← Блог

Node.js и TypeScript + Heli API

Node.js и TypeScript с официальным пакетом openai подключаются к Heli двумя параметрами: baseURL и apiKey. Работает в Express, Next.js, serverless-функциях и CLI-скриптах с оплатой в рублях.

Установка

npm install openai

Ключ sk-heli-… получите на getheli.ru. В production используйте переменные окружения.

TypeScript-пример

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.HELI_API_KEY,
  baseURL: "https://getheli.ru/v1",
});

async function ask(prompt: string) {
  const completion = await client.chat.completions.create({
    model: "openai/gpt-4.1-mini",
    messages: [{ role: "user", content: prompt }],
  });
  return completion.choices[0]?.message?.content ?? "";
}

const answer = await ask("Объясни async/await в Node.js");
console.log(answer);

Типы из SDK покрывают все поля ответа. Модели — на /models.

Next.js API Route

// app/api/chat/route.ts
import OpenAI from "openai";
import { NextResponse } from "next/server";

const client = new OpenAI({
  apiKey: process.env.HELI_API_KEY,
  baseURL: "https://getheli.ru/v1",
});

export async function POST(req: Request) {
  const { message } = await req.json();

  const completion = await client.chat.completions.create({
    model: "openai/gpt-4.1-mini",
    messages: [{ role: "user", content: message }],
  });

  return NextResponse.json({
    reply: completion.choices[0]?.message?.content,
  });
}

Ключ храните только на сервере — никогда не передавайте sk-heli-… в клиентский бандл.

Streaming в Node.js

Для SSE-ответов используйте stream: true и for await — подробный пример в «Streaming API в Heli».

Сравнение с Python

API идентичен — меняется только язык. Python-гайд: «Python OpenAI SDK с Heli». Общая документация — /docs. Безопасность ключей — «Безопасность API-ключа».

Попробуйте Heli за 30 секунд

Ключ sk-heli- и кабинет создаются сразу. После подтверждения почты — 50 ₽ на баланс.

Документация API · Модели и цены

Читайте также