huggingface.js
huggingface.js copied to clipboard
[inference provider] Add wavespeed.ai as an inference provider
What’s in this PR WaveSpeedAI is a high-performance AI image and video generation service platform, offering industry-leading generation speeds. Now, want to be listed as an Inference Provider on the Hugging Face Hub
The JS Client Integration was completed based on the inference-providers help documentation and passed the test. I am submitting the pr now and look forward to further communication with you
Test
pnpm --filter @huggingface/inference test "test/InferenceClient.spec.ts" -t "^Wavespeed AI"
> @huggingface/[email protected] test /Users/shanliu/work/huggingface.js/packages/inference
> vitest run --config vitest.config.mts "test/InferenceClient.spec.ts"
RUN v0.34.6 /Users/shanliu/work/huggingface.js/packages/inference
✓ test/InferenceClient.spec.ts (104) 198160ms
✓ InferenceClient (104) 198160ms
✓ backward compatibility (1)
✓ works with old HfInference name
↓ HF Inference (49) [skipped]
↓ throws error if model does not exist [skipped]
↓ fillMask [skipped]
↓ works without model [skipped]
↓ summarization [skipped]
↓ questionAnswering [skipped]
↓ tableQuestionAnswering [skipped]
↓ documentQuestionAnswering [skipped]
↓ documentQuestionAnswering with non-array output [skipped]
↓ visualQuestionAnswering [skipped]
↓ textClassification [skipped]
↓ textGeneration - gpt2 [skipped]
↓ textGeneration - openai-community/gpt2 [skipped]
↓ textGenerationStream - meta-llama/Llama-3.2-3B [skipped]
↓ textGenerationStream - catch error [skipped]
↓ textGenerationStream - Abort [skipped]
↓ tokenClassification [skipped]
↓ translation [skipped]
↓ zeroShotClassification [skipped]
↓ sentenceSimilarity [skipped]
↓ FeatureExtraction [skipped]
↓ FeatureExtraction - auto-compatibility sentence similarity [skipped]
↓ FeatureExtraction - facebook/bart-base [skipped]
↓ FeatureExtraction - facebook/bart-base, list input [skipped]
↓ automaticSpeechRecognition [skipped]
↓ audioClassification [skipped]
↓ audioToAudio [skipped]
↓ textToSpeech [skipped]
↓ imageClassification [skipped]
↓ zeroShotImageClassification [skipped]
↓ objectDetection [skipped]
↓ imageSegmentation [skipped]
↓ imageToImage [skipped]
↓ imageToImage blob data [skipped]
↓ textToImage [skipped]
↓ textToImage with parameters [skipped]
↓ imageToText [skipped]
↓ request - openai-community/gpt2 [skipped]
↓ tabularRegression [skipped]
↓ tabularClassification [skipped]
↓ endpoint - makes request to specified endpoint [skipped]
↓ endpoint - makes request to specified endpoint - alternative syntax [skipped]
↓ chatCompletion modelId - OpenAI Specs [skipped]
↓ chatCompletionStream modelId - OpenAI Specs [skipped]
↓ chatCompletionStream modelId Fail - OpenAI Specs [skipped]
↓ chatCompletion - OpenAI Specs [skipped]
↓ chatCompletionStream - OpenAI Specs [skipped]
↓ custom mistral - OpenAI Specs [skipped]
↓ custom openai - OpenAI Specs [skipped]
↓ OpenAI client side routing - model should have provider as prefix [skipped]
↓ Fal AI (4) [skipped]
↓ textToImage - black-forest-labs/FLUX.1-schnell [skipped]
↓ textToImage - SD LoRAs [skipped]
↓ textToImage - Flux LoRAs [skipped]
↓ automaticSpeechRecognition - openai/whisper-large-v3 [skipped]
↓ Featherless (3) [skipped]
↓ chatCompletion [skipped]
↓ chatCompletion stream [skipped]
↓ textGeneration [skipped]
↓ Replicate (10) [skipped]
↓ textToImage canonical - black-forest-labs/FLUX.1-schnell [skipped]
↓ textToImage canonical - black-forest-labs/FLUX.1-dev [skipped]
↓ textToImage canonical - stabilityai/stable-diffusion-3.5-large-turbo [skipped]
↓ textToImage versioned - ByteDance/SDXL-Lightning [skipped]
↓ textToImage versioned - ByteDance/Hyper-SD [skipped]
↓ textToImage versioned - playgroundai/playground-v2.5-1024px-aesthetic [skipped]
↓ textToImage versioned - stabilityai/stable-diffusion-xl-base-1.0 [skipped]
↓ textToSpeech versioned [skipped]
↓ textToSpeech OuteTTS - usually Cold [skipped]
↓ textToSpeech Kokoro [skipped]
↓ SambaNova (3) [skipped]
↓ chatCompletion [skipped]
↓ chatCompletion stream [skipped]
↓ featureExtraction [skipped]
↓ Together (4) [skipped]
↓ chatCompletion [skipped]
↓ chatCompletion stream [skipped]
↓ textToImage [skipped]
↓ textGeneration [skipped]
↓ Nebius (3) [skipped]
↓ chatCompletion [skipped]
↓ chatCompletion stream [skipped]
↓ textToImage [skipped]
↓ 3rd party providers (1) [skipped]
↓ chatCompletion - fails with unsupported model [skipped]
↓ Fireworks (2) [skipped]
↓ chatCompletion [skipped]
↓ chatCompletion stream [skipped]
↓ Hyperbolic (4) [skipped]
↓ chatCompletion - hyperbolic [skipped]
↓ chatCompletion stream [skipped]
↓ textToImage [skipped]
↓ textGeneration [skipped]
↓ Novita (2) [skipped]
↓ chatCompletion [skipped]
↓ chatCompletion stream [skipped]
↓ Black Forest Labs (2) [skipped]
↓ textToImage [skipped]
↓ textToImage URL [skipped]
↓ Cohere (2) [skipped]
↓ chatCompletion [skipped]
↓ chatCompletion stream [skipped]
↓ Cerebras (2) [skipped]
↓ chatCompletion [skipped]
↓ chatCompletion stream [skipped]
↓ Nscale (3) [skipped]
↓ chatCompletion [skipped]
↓ chatCompletion stream [skipped]
↓ textToImage [skipped]
↓ Groq (2) [skipped]
↓ chatCompletion [skipped]
↓ chatCompletion stream [skipped]
↓ OVHcloud (4) [skipped]
↓ chatCompletion [skipped]
↓ chatCompletion stream [skipped]
↓ textGeneration [skipped]
↓ textGeneration stream [skipped]
✓ Wavespeed AI (5) 89033ms
✓ textToImage - wavespeed-ai/flux-schnell 89032ms
✓ textToImage - wavespeed-ai/flux-dev-lora 12369ms
✓ textToImage - wavespeed-ai/flux-dev-lora-ultra-fast 17936ms
✓ textToVideo - wavespeed-ai/wan-2.1/t2v-480p 79507ms
✓ imageToImage - wavespeed-ai/hidream-e1-full 74481ms
Test Files 1 passed (1)
Tests 5 passed | 103 skipped (108)
Start at 14:33:17
Duration 89.62s (transform 315ms, setup 14ms, collect 368ms, tests 89.03s, environment 0ms, prepare 74ms)