kopia lustrzana https://github.com/transitive-bullshit/chatgpt-api
pull/643/head^2
rodzic
7f098d1ec3
commit
3269e9b67d
10
package.json
10
package.json
|
@ -37,6 +37,11 @@
|
||||||
"types": "./dist/sdks/genkit.d.ts",
|
"types": "./dist/sdks/genkit.d.ts",
|
||||||
"import": "./dist/sdks/genkit.js",
|
"import": "./dist/sdks/genkit.js",
|
||||||
"default": "./dist/sdks/genkit.js"
|
"default": "./dist/sdks/genkit.js"
|
||||||
|
},
|
||||||
|
"./calculator": {
|
||||||
|
"types": "./dist/tools/calculator.d.ts",
|
||||||
|
"import": "./dist/tools/calculator.js",
|
||||||
|
"default": "./dist/tools/calculator.js"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"files": [
|
"files": [
|
||||||
|
@ -81,6 +86,7 @@
|
||||||
"del-cli": "^5.1.0",
|
"del-cli": "^5.1.0",
|
||||||
"dotenv": "^16.4.5",
|
"dotenv": "^16.4.5",
|
||||||
"eslint": "^8.57.0",
|
"eslint": "^8.57.0",
|
||||||
|
"expr-eval": "^2.0.2",
|
||||||
"husky": "^9.0.11",
|
"husky": "^9.0.11",
|
||||||
"lint-staged": "^15.2.5",
|
"lint-staged": "^15.2.5",
|
||||||
"np": "^10.0.5",
|
"np": "^10.0.5",
|
||||||
|
@ -99,6 +105,7 @@
|
||||||
"@dexaai/dexter": "^2.0.3",
|
"@dexaai/dexter": "^2.0.3",
|
||||||
"@genkit-ai/ai": "^0.5.2",
|
"@genkit-ai/ai": "^0.5.2",
|
||||||
"@langchain/core": "^0.2.5",
|
"@langchain/core": "^0.2.5",
|
||||||
|
"expr-eval": "^2.0.2",
|
||||||
"ai": "^3.1.22"
|
"ai": "^3.1.22"
|
||||||
},
|
},
|
||||||
"peerDependenciesMeta": {
|
"peerDependenciesMeta": {
|
||||||
|
@ -111,6 +118,9 @@
|
||||||
"@langchain/core": {
|
"@langchain/core": {
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
|
"expr-eval": {
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
"ai": {
|
"ai": {
|
||||||
"optional": true
|
"optional": true
|
||||||
}
|
}
|
||||||
|
|
|
@ -75,6 +75,9 @@ importers:
|
||||||
eslint:
|
eslint:
|
||||||
specifier: ^8.57.0
|
specifier: ^8.57.0
|
||||||
version: 8.57.0
|
version: 8.57.0
|
||||||
|
expr-eval:
|
||||||
|
specifier: ^2.0.2
|
||||||
|
version: 2.0.2
|
||||||
husky:
|
husky:
|
||||||
specifier: ^9.0.11
|
specifier: ^9.0.11
|
||||||
version: 9.0.11
|
version: 9.0.11
|
||||||
|
@ -1914,6 +1917,9 @@ packages:
|
||||||
resolution: {integrity: sha512-Fqs7ChZm72y40wKjOFXBKg7nJZvQJmewP5/7LtePDdnah/+FH9Hp5sgMujSCMPXlxOAW2//1jrW9pnsY7o20vQ==}
|
resolution: {integrity: sha512-Fqs7ChZm72y40wKjOFXBKg7nJZvQJmewP5/7LtePDdnah/+FH9Hp5sgMujSCMPXlxOAW2//1jrW9pnsY7o20vQ==}
|
||||||
engines: {node: '>=18'}
|
engines: {node: '>=18'}
|
||||||
|
|
||||||
|
expr-eval@2.0.2:
|
||||||
|
resolution: {integrity: sha512-4EMSHGOPSwAfBiibw3ndnP0AvjDWLsMvGOvWEZ2F96IGk0bIVdjQisOHxReSkE13mHcfbuCiXw+G4y0zv6N8Eg==}
|
||||||
|
|
||||||
express@4.19.2:
|
express@4.19.2:
|
||||||
resolution: {integrity: sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==}
|
resolution: {integrity: sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==}
|
||||||
engines: {node: '>= 0.10.0'}
|
engines: {node: '>= 0.10.0'}
|
||||||
|
@ -6519,6 +6525,8 @@ snapshots:
|
||||||
|
|
||||||
exit-hook@4.0.0: {}
|
exit-hook@4.0.0: {}
|
||||||
|
|
||||||
|
expr-eval@2.0.2: {}
|
||||||
|
|
||||||
express@4.19.2:
|
express@4.19.2:
|
||||||
dependencies:
|
dependencies:
|
||||||
accepts: 1.3.8
|
accepts: 1.3.8
|
||||||
|
|
|
@ -106,13 +106,11 @@ export namespace perigon {
|
||||||
q: z.string()
|
q: z.string()
|
||||||
.describe(`Search query. It may use boolean operators (AND, OR, NOT) and quotes for exact matching. Example search queries:
|
.describe(`Search query. It may use boolean operators (AND, OR, NOT) and quotes for exact matching. Example search queries:
|
||||||
|
|
||||||
- AI agents
|
- election news
|
||||||
- Compare the latest predictions and popular opinions on the 2024 US election
|
|
||||||
- "elon musk" AND tesla
|
- "elon musk" AND tesla
|
||||||
- (upcoming release OR launch) AND apple
|
- (upcoming release OR launch) AND apple
|
||||||
- (Google OR Amazon) AND NOT ("Jeff Bezos" OR Android)
|
- (Google OR Amazon) AND NOT ("Jeff Bezos" OR Android)
|
||||||
- "climate change"
|
- "climate change"
|
||||||
- Crypto* OR Bitcoin NOT Ethereum
|
|
||||||
`),
|
`),
|
||||||
title: z
|
title: z
|
||||||
.string()
|
.string()
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
import { Parser } from 'expr-eval'
|
||||||
|
import { z } from 'zod'
|
||||||
|
|
||||||
|
import { createAIFunction } from '../create-ai-function.js'
|
||||||
|
|
||||||
|
export const CalculatorInputSchema = z.object({
|
||||||
|
expr: z.string().describe('mathematical expression to evaluate')
|
||||||
|
})
|
||||||
|
export type CalculatorInput = z.infer<typeof CalculatorInputSchema>
|
||||||
|
|
||||||
|
export const calculator = createAIFunction(
|
||||||
|
{
|
||||||
|
name: 'calculator',
|
||||||
|
description:
|
||||||
|
'Computes the result of simple mathematical expressions. Handles basic arithmetic operations like addition, subtraction, multiplication, division, exponentiation, and common functions like sin, cos, abs, exp, and random.',
|
||||||
|
inputSchema: CalculatorInputSchema
|
||||||
|
},
|
||||||
|
async (input: CalculatorInput) => {
|
||||||
|
const result: number = Parser.evaluate(input.expr)
|
||||||
|
return result
|
||||||
|
}
|
||||||
|
)
|
|
@ -6,7 +6,8 @@ export default defineConfig([
|
||||||
'src/index.ts',
|
'src/index.ts',
|
||||||
'src/sdks/ai-sdk.ts',
|
'src/sdks/ai-sdk.ts',
|
||||||
'src/sdks/dexter.ts',
|
'src/sdks/dexter.ts',
|
||||||
'src/sdks/genkit.ts'
|
'src/sdks/genkit.ts',
|
||||||
|
'src/tools/calculator.ts'
|
||||||
],
|
],
|
||||||
outDir: 'dist',
|
outDir: 'dist',
|
||||||
target: 'node18',
|
target: 'node18',
|
||||||
|
|
Ładowanie…
Reference in New Issue