@emergentmethods/asknews-typescript-sdk
Version:
Typescript SDK for AskNews API
121 lines (120 loc) • 5.66 kB
JavaScript
/* 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'
};
;