-
Notifications
You must be signed in to change notification settings - Fork 89
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New builtin fetch alpha #645
Comments
ky is a great replacement of fetch (it's a wrapper with great DX., sharing here incase you'd like to consider it. |
Thanks! However we're not considering other HTTP libraries as one great benefit of just depending on the builtin |
do you have a migration guide to support httpAgent from https://www.npmjs.com/package/https-proxy-agent ? |
@pelikhan we haven't tested Node: import Anthropic from '@anthropic-ai/sdk';
import * as undici from 'undici';
const dispatcher = new undici.ProxyAgent('http://localhost:8888');
const client = new Anthropic({
fetch(url, init = {}) {
return undici.fetch(url, {
...(init as unknown as undici.RequestInit),
dispatcher,
}) as unknown as Promise<Response>;
},
}); Bun: import Anthropic from '@anthropic-ai/sdk';
const client = new Anthropic({
fetch(url, init) {
return fetch(url, { ...init, proxy: 'http://localhost:8888' });
},
}); Deno: import Anthropic from '@anthropic-ai/sdk';
const httpClient = Deno.createHttpClient({ proxy: { url: 'http://localhost:8888' } });
const client = new Anthropic({
fetch(url, init) {
return fetch(url, { ...init, client: httpClient });
},
}); |
node-openai used this library already |
@pelikhan sorry what do you mean? |
Here are the docs about using a proxy with node-openai --> https://github.com/openai/openai-node?tab=readme-ov-file#configuring-an-https-agent-eg-for-proxies |
Ah, I think passing the |
We've been working on an alpha version of the SDK that alongside many other cleanups, migrates from
node-fetch
to builtin fetch.You can try it out by installing the
0.34.0-alpha.0
version:The core happy path of the SDK remains the same, your existing method calls should just work! However you may run into typing issues as we now expect that
fetch
is defined as a global.There are many other small breaking changes which you may run into, we'll share a full migration guide as soon as possible.
Please share feedback on anything you think could be improved or if you run into any issues! Hope this is a nice early present for you all :)
Important
Unfortunately we cannot guarantee support over the holiday break (December 20th - January 6th inclusive) but we will go through every comment as soon as possible.
The text was updated successfully, but these errors were encountered: