File size: 1,433 Bytes
8426b1e
a73e8b4
607207a
a73e8b4
7ec7db5
a73e8b4
 
 
 
 
 
607207a
 
a73e8b4
7ec7db5
 
a73e8b4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8426b1e
5b87497
1f55d89
607207a
7ec7db5
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import { createSearchApi } from '../../../app/tools/search';
import { createOddsApi } from '@/app/tools/odds';
import { createSportsResultsApi } from '@/app/tools/scores';
import { similaritySearch } from './vector-store';
import { createCoinMarketCapApi } from '@/app/tools/coin';

const [serpApi] =
  createSearchApi({
    apiKey: process.env.SERP_API_KEY || "",
});

const [sportsScoresApi] = createSportsResultsApi({ apiKey: process.env.SERP_API_KEY || "",});

const [oddsApi] = createOddsApi({ apiKey: process.env.ODDS_API_KEY || "" });

const [coinMarketCapApi] = createCoinMarketCapApi({ apiKey: process.env.COINMARKETCAP_API_KEY || "" });
type FunctionOutput = any;
type FunctionInput = any;

export const odds: FunctionOutput = async ({ input }: FunctionInput) => {
  const content = await oddsApi({input});
  const oddsApiResults = await similaritySearch(input, content);
  return oddsApiResults;
}

export const serp: FunctionOutput = async ({ input }: FunctionInput) => {
  const content: string = await serpApi({input})
  const serpApiResults = await similaritySearch(input, content);
  return serpApiResults;
}

export const sports: FunctionOutput = async ({ input }: FunctionInput) => {
  const content: string = await sportsScoresApi({input})
  return content;
}


export const coin: FunctionOutput = async ({ input }: FunctionInput) => {
  const content: string = await coinMarketCapApi({input})
  return content;
}