Using OpenAI chat completion (GPT3) with function calls to SMHI api
The API is instructed to use the current time in Europe/Stockholm timezone.
If the message can not be handled with the weather API endpoint, the Open AI assistant will reply instead.
Relevant API documentation
RUN_ENDPOINT?args=["A weather question"]
{
answer?: string
error?:string
data?: unknown
summary?: string
}
- How is the weather in the Capital of Sweden tomorrow.
- How is the weather at Liseberg on Friday.
- zod: for describing the SMHI API response and function API input
- zod-to-json-schema: Transform the zod schema to json schema (readable by the GPT API)
- gpt3-tokenizer: count the number of tokens
- date-fns-tz: To handle dates in a specific timezone (Europe/Stockholm)