models.mjs 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
  2. import { APIResource } from "../../core/resource.mjs";
  3. import { Page } from "../../core/pagination.mjs";
  4. import { buildHeaders } from "../../internal/headers.mjs";
  5. import { path } from "../../internal/utils/path.mjs";
  6. export class Models extends APIResource {
  7. /**
  8. * Get a specific model.
  9. *
  10. * The Models API response can be used to determine information about a specific
  11. * model or resolve a model alias to a model ID.
  12. *
  13. * @example
  14. * ```ts
  15. * const betaModelInfo = await client.beta.models.retrieve(
  16. * 'model_id',
  17. * );
  18. * ```
  19. */
  20. retrieve(modelID, params = {}, options) {
  21. const { betas } = params ?? {};
  22. return this._client.get(path `/v1/models/${modelID}?beta=true`, {
  23. ...options,
  24. headers: buildHeaders([
  25. { ...(betas?.toString() != null ? { 'anthropic-beta': betas?.toString() } : undefined) },
  26. options?.headers,
  27. ]),
  28. });
  29. }
  30. /**
  31. * List available models.
  32. *
  33. * The Models API response can be used to determine which models are available for
  34. * use in the API. More recently released models are listed first.
  35. *
  36. * @example
  37. * ```ts
  38. * // Automatically fetches more pages as needed.
  39. * for await (const betaModelInfo of client.beta.models.list()) {
  40. * // ...
  41. * }
  42. * ```
  43. */
  44. list(params = {}, options) {
  45. const { betas, ...query } = params ?? {};
  46. return this._client.getAPIList('/v1/models?beta=true', (Page), {
  47. query,
  48. ...options,
  49. headers: buildHeaders([
  50. { ...(betas?.toString() != null ? { 'anthropic-beta': betas?.toString() } : undefined) },
  51. options?.headers,
  52. ]),
  53. });
  54. }
  55. }
  56. //# sourceMappingURL=models.mjs.map