UNPKG

@emergentmethods/asknews-typescript-sdk

Version:
121 lines (120 loc) 5.66 kB
"use strict"; /* tslint:disable */ /* eslint-disable */ /** * AskNews API * AskNews API * * The version of the OpenAPI document: 0.21.1 * Contact: contact@emergentmethods.ai * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.GetForecastExpertEnum = exports.GetForecastModelEnum = exports.GetForecastMethodEnum = exports.ForecastApi = void 0; const runtime = require("../runtime"); const index_1 = require("../models/index"); /** * */ class ForecastApi extends runtime.BaseAPI { /** * Make an expert forecast for a news event. This endpoint reaches into the news archive, looking back `lookback` days to extract the most relevant news articles, building a timeline of events, and then making an expert forecast. This endpoint is more expensive than the search endpoint, it is calling gpt-4o or claude 3-5 on approx 15k tokens to build the forecast. This endpoint counts toward \"deep\" calls in the billing system. It returns the forecast, the reasoning, and the sources. * Make an expert forecast for a news event. */ getForecastRaw(requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function* () { if (requestParameters['query'] == null) { throw new runtime.RequiredError('query', 'Required parameter "query" was null or undefined when calling getForecast().'); } const queryParameters = {}; if (requestParameters['query'] != null) { queryParameters['query'] = requestParameters['query']; } if (requestParameters['lookback'] != null) { queryParameters['lookback'] = requestParameters['lookback']; } if (requestParameters['articlesToUse'] != null) { queryParameters['articles_to_use'] = requestParameters['articlesToUse']; } if (requestParameters['method'] != null) { queryParameters['method'] = requestParameters['method']; } if (requestParameters['model'] != null) { queryParameters['model'] = requestParameters['model']; } if (requestParameters['cutoffDate'] != null) { queryParameters['cutoff_date'] = requestParameters['cutoffDate']; } if (requestParameters['useReddit'] != null) { queryParameters['use_reddit'] = requestParameters['useReddit']; } if (requestParameters['additionalContext'] != null) { queryParameters['additional_context'] = requestParameters['additionalContext']; } if (requestParameters['webSearch'] != null) { queryParameters['web_search'] = requestParameters['webSearch']; } if (requestParameters['expert'] != null) { queryParameters['expert'] = requestParameters['expert']; } const headerParameters = {}; const response = yield this.request({ path: `/v1/chat/forecast`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.ForecastResponseFromJSON)(jsonValue)); }); } /** * Make an expert forecast for a news event. This endpoint reaches into the news archive, looking back `lookback` days to extract the most relevant news articles, building a timeline of events, and then making an expert forecast. This endpoint is more expensive than the search endpoint, it is calling gpt-4o or claude 3-5 on approx 15k tokens to build the forecast. This endpoint counts toward \"deep\" calls in the billing system. It returns the forecast, the reasoning, and the sources. * Make an expert forecast for a news event. */ getForecast(requestParameters, initOverrides) { return __awaiter(this, void 0, void 0, function* () { const response = yield this.getForecastRaw(requestParameters, initOverrides); return yield response.value(); }); } } exports.ForecastApi = ForecastApi; /** * @export */ exports.GetForecastMethodEnum = { Kw: 'kw' }; /** * @export */ exports.GetForecastModelEnum = { Gpt4o: 'gpt-4o', Gpt4oMini: 'gpt-4o-mini', Gpt4120250414: 'gpt-4.1-2025-04-14', Claude35SonnetLatest: 'claude-3-5-sonnet-latest', Claude35Sonnet20240620: 'claude-3-5-sonnet-20240620', ClaudeSonnet420250514: 'claude-sonnet-4-20250514', ClaudeOpus420250514o1Mini: 'claude-opus-4-20250514o1-mini', O3Mini: 'o3-mini', O3: 'o3' }; /** * @export */ exports.GetForecastExpertEnum = { General: 'general', Sports: 'sports' };