docs: add HopBase to the OpenAI-compatible providers section

Open Beginner friendly
#24,302 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

@victor-zzh is already working on this.

Since Nov 1, 2026.

  • #24327 by @victor-zzh — open

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
82/100
Issue type
Documentation
Clarity
Clearly specified
Activity status
Active
Tech stack
typescript
Domain
documentation

Research direction

Start in content/providers/04-openai-compatible-providers/ and compare the ModelRush (#20680) and Cheaper Inference (#21457) pages to follow the existing format. Use the linked HopBase setup guide and the supplied base URL, authentication, and model-discovery details as references. Done means a HopBase page is added with setup information consistent with those references.

Written by the indexing model from the issue text.

Description

factory-active task-identify-harness-labels-done task-identify-issue-type-done
Description

Please add a HopBase page to content/providers/04-openai-compatible-providers/.

HopBase is an OpenAI-compatible AI API gateway. One key reaches chat models from Anthropic, OpenAI, Google, xAI, DeepSeek, Z.ai, Moonshot, Alibaba and ByteDance, plus image and video generation models. It also serves DeepSeek V4.1 Flash from a Singapore data center (deepseek-v4.1-flash-1017-sg).

The integration needs no provider package: createOpenAICompatible with a baseURL is the full setup, the same shape as the ModelRush (#20680) and Cheaper Inference (#21457) pages.

The provider docs list the AI SDK

Setup facts

  • Base URL: https://api.hop-base.com/v1
  • Auth: Authorization: Bearer <key>. Keys are created in the console at https://api.hop-base.com
  • Model IDs: GET https://api.hop-base.com/v1/models (needs an API key). Public catalog: https://hop-base.com/models
  • Claude models are served over the Anthropic Messages protocol and work with @ai-sdk/anthropic using baseURL: 'https://api.hop-base.com/v1'; this is documented on the setup page above.
Reproduction
import { createOpenAICompatible } from '@ai-sdk/openai-compatible';
import { generateText, streamText } from 'ai';

const hopbase = createOpenAICompatible({
  name: 'hopbase',
  apiKey: process.env.HOPBASE_API_KEY,
  baseURL: 'https://api.hop-base.com/v1',
});

const { text } = await generateText({
  model: hopbase('deepseek-v4.1-flash-1017'),
  prompt: 'Reply with the single word: ready',
});
console.log(text); // ready

const result = streamText({
  model: hopbase('deepseek-v4.1-flash-1017'),
  prompt: 'Count from 1 to 5, separated by spaces.',
});
for await (const part of result.textStream) process.stdout.write(part); // 1 2 3 4 5

Live test on 2026-10-31: both calls returned the expected output. Tool calling with tool() was also verified.

Disclosure: I work on HopBase.

AI SDK Version
  • ai: 7.0.159, @ai-sdk/openai-compatible: 3.0.82
Code of Conduct
  • I agree to follow this project's Code of Conduct
Dominant language
TypeScript
Stars
27.6k
Forks
5.5k
Avg merge
12h 44m
Merged PRs (30d)
500

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from vercel/ai

All issues in vercel/ai

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.