Dropstone Support

Início rápido do SDK da Dropstone

Instale o SDK da Dropstone, faça uma chamada de API headless com uma chave de API e execute uma sessão de agente local que carrega a memória da sua conta. Inclui streaming, saída estruturada e uso do SDK da OpenAI com a Dropstone.

Dois clientes, duas primeiras chamadas. Escolha o que corresponde a onde seu código é executado; a visão geral do SDK explica a diferença.


Headless: uma chamada de qualquer lugar

  1. Crie uma chave de API em Configurações, em Chaves de API, no seu painel. Ela se parece com dsk_live_... e é mostrada apenas uma vez.
  2. Instale o SDK: npm install @blankline/dropstone-sdk.
  3. Coloque a chave no ambiente, como DROPSTONE_API_KEY. Trate-a como uma senha: nunca a envie para um repositório e nunca a inclua em um bundle de navegador.
  4. Faça a chamada. O cliente lê a variável de ambiente por conta própria.
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)

Adicione stream: true e a mesma chamada retorna um iterador assíncrono de chunks, que é o que você deseja em uma interface ou em uma resposta longa:

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 ?? "")
}

O endpoint é compatível com a OpenAI, então um cliente existente funciona apontando para a Dropstone:

import OpenAI from "openai"

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

As solicitações com chave de API são cobradas conforme o uso, a partir do seu saldo de créditos, e não de uma cota do plano; uma chave com saldo vazio é recusada com um link para recarga. Consulte Como usar a API com seu plano.


Local: o agente, no seu processo

O cliente local inicia um processo dropstone serve, entrega a você um cliente tipado apontado para ele e o fecha quando você terminar. Como ele é executado como sua conta, as sessões carregam sua memória.

  1. Instale a CLI da Dropstone e entre com dropstone login. O SDK lê o mesmo login.
  2. Crie uma sessão e envie um prompt para ela.
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()

Se um servidor já estiver em execução, pule a criação:

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

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

Dicas

  • Fixei a faixa de versão. O SDK é lançado em um ritmo acelerado, então dependa de uma faixa que você testou, em vez da tag mais recente.
  • Use v2 para código novo. @blankline/dropstone-sdk/v2 é a superfície onde novos endpoints são lançados; v1 permanece para integrações existentes.
  • Mantenha o aprendizado de um pipeline fora da sua própria memória. Uma chamada headless não tem memória anexada, e uma sessão local usa a conta com a qual você entrou. Se uma integração deve ter sua própria memória, dê a ela sua própria conta. Consulte Uma memória em todas as superfícies.

Limitações

  • O cliente local precisa da CLI na mesma máquina; um host sem ela deve usar o cliente headless.
  • O endpoint headless é de chat completions. O loop do agente, as operações de arquivo e as ferramentas de workspace estão no cliente local.

Related articles

Ctrl+I