Dropstone Support

Instal dan jalankan sesi pertama Anda

Instal Dropstone SDK, lakukan panggilan API headless dengan kunci API, dan jalankan sesi agen lokal yang membawa memori akun Anda. Termasuk streaming, output terstruktur, dan penggunaan OpenAI SDK terhadap Dropstone.

Dua klien, dua panggilan pertama. Pilih yang sesuai dengan tempat kode Anda berjalan; ringkasan SDK menjelaskan perbedaannya.


Headless: panggilan dari mana saja

  1. Buat kunci API di Settings, di bawah API keys, di dashboard Anda. Kuncinya terlihat seperti dsk_live_... dan hanya ditampilkan sekali.
  2. Instal SDK: npm install @blankline/dropstone-sdk.
  3. Simpan kunci di environment, sebagai DROPSTONE_API_KEY. Perlakukan seperti kata sandi: jangan pernah commit, dan jangan pernah mengirimkannya dalam bundle browser.
  4. Panggil. Klien membaca variabel environment secara otomatis.
import { createDropstoneApi } from "@blankline/dropstone-sdk"

const dropstone = createDropstoneApi()

const resp = await dropstone.chat.completions.create({
  model: "dropstone-fast",
  messages: [{ role: "user", content: "Summarise this changelog entry." }],
})

console.log(resp.choices[0].message.content)

Tambahkan stream: true dan panggilan yang sama mengembalikan iterator async dari potongan data, yang Anda butuhkan di UI atau untuk jawaban panjang:

const stream = await dropstone.chat.completions.create({
  model: "dropstone-fast",
  stream: true,
  messages: [{ role: "user", content: "Count to five." }],
})

for await (const chunk of stream) {
  process.stdout.write(chunk.choices?.[0]?.delta?.content ?? "")
}

Endpoint-nya kompatibel dengan OpenAI, sehingga klien yang sudah ada dapat bekerja dengan mengarahkannya ke Dropstone:

import OpenAI from "openai"

const openai = new OpenAI({
  baseURL: "https://api.dropstone.io/api/v1",
  apiKey: process.env.DROPSTONE_API_KEY,
})

Permintaan dengan kunci API ditagih pay-per-use dari saldo kredit Anda, bukan dari kuota paket, dan kunci dengan saldo kosong akan ditolak dengan tautan top-up. Lihat Menggunakan API dengan paket Anda.


Lokal: agen, di dalam proses Anda

Klien lokal memulai proses dropstone serve, memberi Anda klien bertipe yang mengarah ke proses tersebut, dan menutupnya setelah selesai. Karena berjalan sebagai akun Anda, sesi membawa memori Anda.

  1. Instal Dropstone CLI dan masuk dengan dropstone login. SDK membaca proses masuk yang sama.
  2. Buat sesi, lalu kirim prompt.
import { createDropstone } from "@blankline/dropstone-sdk"

const { client, server } = await createDropstone()

const session = await client.session.create({
  body: { agent: "build", model: { providerID: "dropstone", modelID: "dropstone-pro" } },
})

const reply = await client.session.prompt({
  path: { id: session.data.id },
  body: { parts: [{ type: "text", text: "Hello, who are you?" }] },
})

console.log(reply.data)
await server.close()

Jika server sudah berjalan, lewati proses spawn:

import { createDropstoneClient } from "@blankline/dropstone-sdk"

const client = createDropstoneClient({ baseUrl: "http://127.0.0.1:4096" })

Tips

  • Kunci rentang versi. SDK dirilis dengan ritme cepat, jadi bergantunglah pada rentang yang telah Anda uji, bukan tag terbaru.
  • Gunakan v2 untuk kode baru. @blankline/dropstone-sdk/v2 adalah permukaan tempat endpoint baru dirilis; v1 tetap untuk integrasi yang sudah ada.
  • Jauhkan pembelajaran pipeline dari memori Anda sendiri. Panggilan headless tidak memiliki memori yang terpasang, dan sesi lokal menggunakan akun yang Anda gunakan untuk masuk. Jika sebuah integrasi harus memiliki memorinya sendiri, berikan akun tersendiri. Lihat Satu memori di setiap permukaan.

Keterbatasan

  • Klien lokal membutuhkan CLI di mesin yang sama; host tanpa CLI harus menggunakan klien headless.
  • Endpoint headless adalah chat completions. Loop agen, operasi file, dan alat workspace tersedia di klien lokal.

Related articles

Ctrl+I