EgyptmeesMediaFetcher.tsx4 matches
2const PINECONE_API_KEY = Deno.env.get("PINECONE_API_KEY");
3const PINECONE_HOST = Deno.env.get("PINECONE_HOST");
4const OPENAI_API_KEY = Deno.env.get("OPENAI_API_KEY");
56console.log("PINECONE_HOST:", PINECONE_HOST);
7console.log("Has API keys:", !!PINECONE_API_KEY, !!OPENAI_API_KEY);
89try {
10// Get embedding
11const embResponse = await fetch("https://api.openai.com/v1/embeddings", {
12method: "POST",
13headers: {
14"Authorization": `Bearer ${OPENAI_API_KEY}`,
15"Content-Type": "application/json",
16},
EgyptmeesSearchEngine.tsx4 matches
2export const searchEngine = {
3async search(parsedQuery: any, originalQuery: string) {
4const OPENAI_API_KEY = Deno.env.get("OPENAI_API_KEY");
5const PINECONE_API_KEY = Deno.env.get("PINECONE_API_KEY");
6const PINECONE_HOST = Deno.env.get("PINECONE_HOST");
18console.log("Wants latest?", wantsLatest);
1920const embedding = await searchEngine.getEmbedding(originalQuery, OPENAI_API_KEY);
2122const filter = {};
9495async getEmbedding(text: string, apiKey: string) {
96const response = await fetch("https://api.openai.com/v1/embeddings", {
97method: "POST",
98headers: {
108if (!response.ok) {
109const error = await response.text();
110console.error("OpenAI embedding error:", error);
111throw new Error(`Embedding generation failed: ${response.status}`);
112}
EgyptmeesAnswerBot.tsx5 matches
4export const answerBot = {
5async generateAnswer(query: string, searchResults: any, threadId?: string) {
6const OPENAI_API_KEY = Deno.env.get("OPENAI_API_KEY");
78// Get or create thread
80];
8182const response = await fetch("https://api.openai.com/v1/chat/completions", {
83method: "POST",
84headers: {
85"Authorization": `Bearer ${OPENAI_API_KEY}`,
86"Content-Type": "application/json",
87},
98if (!response.ok) {
99const error = await response.text();
100console.error("OpenAI API error:", error);
101throw new Error(`OpenAI API failed: ${response.status}`);
102}
103
EgyptmeesQueryParser.tsx3 matches
1export const queryParser = {
2async parse(query: string) {
3const OPENAI_API_KEY = Deno.env.get("OPENAI_API_KEY");
45const response = await fetch("https://api.openai.com/v1/chat/completions", {
6method: "POST",
7headers: {
8"Authorization": `Bearer ${OPENAI_API_KEY}`,
9"Content-Type": "application/json",
10},
EgypttestPinecone.tsx4 matches
2const PINECONE_API_KEY = Deno.env.get("PINECONE_API_KEY");
3const PINECONE_HOST = Deno.env.get("PINECONE_HOST");
4const OPENAI_API_KEY = Deno.env.get("OPENAI_API_KEY");
56console.log("PINECONE_HOST:", PINECONE_HOST);
7console.log("Has API keys:", !!PINECONE_API_KEY, !!OPENAI_API_KEY);
89try {
10// Get embedding
11const embResponse = await fetch("https://api.openai.com/v1/embeddings", {
12method: "POST",
13headers: {
14"Authorization": `Bearer ${OPENAI_API_KEY}`,
15"Content-Type": "application/json",
16},
untitled-7983main.tsx3 matches
1import { OpenAI } from "https://esm.town/v/std/openai";
23const openai = new OpenAI();
45const completion = await openai.chat.completions.create({
6messages: [
7{ role: "user", content: "What are some interesting walks in Hertfordshire, starting in Hemel" },
1import { Hono } from "https://esm.sh/hono@3.11.7";
2import { OpenAI } from "https://esm.town/v/std/openai";
3import type { AIPrioritizeAllResponse, AIPriorityResponse } from "../../shared/types.ts";
4import { getAllTodos, updateTodoAIPriority } from "../database/queries.ts";
56const ai = new Hono();
7const openai = new OpenAI();
89// Get AI priority suggestion for a single todo
35`;
3637const completion = await openai.chat.completions.create({
38messages: [{ role: "user", content: prompt }],
39model: "gpt-4o-mini",
44const response = completion.choices[0]?.message?.content;
45if (!response) {
46throw new Error("No response from OpenAI");
47}
48100`;
101102const completion = await openai.chat.completions.create({
103messages: [{ role: "user", content: prompt }],
104model: "gpt-4o-mini",
109const response = completion.choices[0]?.message?.content;
110if (!response) {
111throw new Error("No response from OpenAI");
112}
113
pineconenew-file-6541.tsx41 matches
1// MEES Assistant API Endpoint with v2 API
2// Remember to add your environment variables in Val settings:
3// - OPENAI_API_KEY
4// - PINECONE_API_KEY
5// - ASSISTANT_ID
6// - PARSER_ASSISTANT_ID (optional)
78import { OpenAI } from "https://deno.land/x/openai@v4.20.1/mod.ts";
9import { Pinecone } from "https://esm.sh/@pinecone-database/pinecone@2.0.0";
1011// Use OpenAI client only for embeddings
12const openai = new OpenAI({
13apiKey: Deno.env.get("OPENAI_API_KEY"),
14});
1542async function parseQueryIntent(query: string) {
43try {
44const OPENAI_API_KEY = Deno.env.get("OPENAI_API_KEY");
4546// Create a quick thread for parsing
47const threadResponse = await fetch("https://api.openai.com/v1/threads", {
48method: "POST",
49headers: {
50"Authorization": `Bearer ${OPENAI_API_KEY}`,
51"Content-Type": "application/json",
52"OpenAI-Beta": "assistants=v2",
53},
54body: JSON.stringify({}),
5859// Add the query
60await fetch(`https://api.openai.com/v1/threads/${thread.id}/messages`, {
61method: "POST",
62headers: {
63"Authorization": `Bearer ${OPENAI_API_KEY}`,
64"Content-Type": "application/json",
65"OpenAI-Beta": "assistants=v2",
66},
67body: JSON.stringify({
7273// Run the parser assistant
74const runResponse = await fetch(`https://api.openai.com/v1/threads/${thread.id}/runs`, {
75method: "POST",
76headers: {
77"Authorization": `Bearer ${OPENAI_API_KEY}`,
78"Content-Type": "application/json",
79"OpenAI-Beta": "assistants=v2",
80},
81body: JSON.stringify({
100101const statusResponse = await fetch(
102`https://api.openai.com/v1/threads/${thread.id}/runs/${run.id}`,
103{
104headers: {
105"Authorization": `Bearer ${OPENAI_API_KEY}`,
106"OpenAI-Beta": "assistants=v2",
107},
108},
114// Get the response
115const messagesResponse = await fetch(
116`https://api.openai.com/v1/threads/${thread.id}/messages?order=desc&limit=1`,
117{
118headers: {
119"Authorization": `Bearer ${OPENAI_API_KEY}`,
120"OpenAI-Beta": "assistants=v2",
121},
122},
156157// Get embedding for query
158const embeddingResponse = await openai.embeddings.create({
159model: "text-embedding-3-small",
160input: query,
327});
328329// Step 4: Format data for OpenAI
330debugInfo += `\n\nš¦ STEP 4: DATA FORMATTING FOR OPENAI\n${"-".repeat(40)}\n`;
331332const formattedResults = searchResults.slice(0, 10).map((match) => {
336const mediaInText = extractMediaFromText(meta.text || "");
337338// Truncate text for OpenAI
339let textContent = meta.text || "";
340const maxTextLength = 500;
368});
369370debugInfo += `ā Formatted ${formattedResults.length} results for OpenAI\n`;
371debugInfo += `š Sample formatted result:\n${
372JSON.stringify(formattedResults[0], null, 2).substring(0, 800)
542}
543544const OPENAI_API_KEY = Deno.env.get("OPENAI_API_KEY");
545if (!OPENAI_API_KEY) {
546throw new Error("OPENAI_API_KEY not found in environment variables");
547}
548551}
552553// IMPORTANT: All OpenAI API calls use these headers with assistants=v2
554const baseHeaders = {
555"Authorization": `Bearer ${OPENAI_API_KEY}`,
556"Content-Type": "application/json",
557"OpenAI-Beta": "assistants=v2",
558};
559560console.log("Assistant ID:", ASSISTANT_ID);
561console.log("Using OpenAI-Beta: assistants=v2");
562563// Parse the query first (if parser assistant is configured)
594let thread;
595if (threadId) {
596const threadResponse = await fetch(`https://api.openai.com/v1/threads/${threadId}`, {
597headers: baseHeaders,
598});
602thread = await threadResponse.json();
603} else {
604const threadResponse = await fetch("https://api.openai.com/v1/threads", {
605method: "POST",
606headers: baseHeaders,
627628// Add message to thread with v2 headers
629const messageResponse = await fetch(`https://api.openai.com/v1/threads/${thread.id}/messages`, {
630method: "POST",
631headers: baseHeaders,
641642// Run the assistant with v2 headers
643const runResponse = await fetch(`https://api.openai.com/v1/threads/${thread.id}/runs`, {
644method: "POST",
645headers: baseHeaders,
693const mediaInText = extractMediaFromText(meta.text || "");
694695// OPTIMIZATION: Only send text excerpts to OpenAI
696let textContent = meta.text || "";
697const maxTextLength = 500;
876877const statusResponse = await fetch(
878`https://api.openai.com/v1/threads/${thread.id}/runs/${run.id}`,
879{ headers: baseHeaders },
880);
905// Submit tool outputs with v2 headers
906const toolOutputResponse = await fetch(
907`https://api.openai.com/v1/threads/${thread.id}/runs/${run.id}/submit_tool_outputs`,
908{
909method: "POST",
929// Get the assistant's response with v2 headers
930const messagesResponse = await fetch(
931`https://api.openai.com/v1/threads/${thread.id}/messages?order=desc&limit=20`,
932{ headers: baseHeaders },
933);
claudeGeneratedTODOmain.tsx3 matches
1import { OpenAI } from "https://esm.town/v/std/openai";
2import React, { useEffect, useState } from "npm:react";
34const openai = new OpenAI();
56interface Todo {
85`;
8687const response = await openai.chat.completions.create({
88model: "gpt-4",
89messages: [{ role: "user", content: prompt }],
Contextualfork-thought.ts6 matches
1import type { MCPTool, ThoughtFork, ThoughtExploration } from "../../../shared/types.ts";
2import type { AuthContext } from "../auth.ts";
3import { OpenAI } from "https://esm.town/v/std/openai";
4import {
5createThoughtFork,
12} from "../../database/queries.ts";
1314const openai = new OpenAI();
1516export const forkThoughtTools: MCPTool[] = [
152
153try {
154const completion = await openai.chat.completions.create({
155messages: [
156{
224225try {
226const completion = await openai.chat.completions.create({
227messages: [
228{
275async function extractInsights(content: string): Promise<string[]> {
276try {
277const completion = await openai.chat.completions.create({
278messages: [
279{
360361try {
362const completion = await openai.chat.completions.create({
363messages: [
364{