3.0.1 • Published 7 months ago
gkh v3.0.1
GKH: Genkit helper
Imagine you have genkit, and the library helps you complete your ideas with code snippets.
Main functions
- make:ai - make a genkit ai instance
- add:getAllFlows - add code snippet to read all your structured flows
- make:flow - make a flow
- make:rag - make a rag (indexer & retriever)
- make:tool - make a tool
- make:prompt - make a prompt
- make:reranker - make a reranker
- docs:gen - generate openapi documents
- make:schema - make:schema
Usage
npx gkh
#or
npm i -g gkh
# then starting use `gk` or `gkh` command on your top of genkit project
make:ai
Usage: gkh make:ai [options]
make a genkit ai instance
Options:
-p,--path [path] path for save ai instance (default: "src/ai/ai.ts")
-h, --help display help for command
add:getAllFlows
Usage: gkh add:getAllFlows [options]
add code snippet to read all your structured flows
Options:
-t, --type [type] for 'functions' | 'api' (default: "api")
-h, --help display help for command
make:flow
Usage: gkh make:flow [options] <name>
make a flow
genkit docs: https://firebase.google.com/docs/genkit/flows
Arguments:
name name of flow, separated by / , ex: users/list
Options:
-s, --stream [stream] flow is streaming or not (default: false)
-t, --type [type] supported 'defineFlow', 'onFlow' (default: "defineFlow")
-h, --help display help for command
make:rag
Usage: gkh make:rag [options] <name>
make a rag (indexer & retriever)
genkit docs: https://firebase.google.com/docs/genkit/rag
Arguments:
name rag name; ex: menuQA
Options:
-t, --type [type] type of vectorstore; supported 'fs'('firestore'), 'simple','local', 'custom' (default: "simple")
-l, --limit [limit] retriever's limit (default: 5)
-c, --collection [collection] firestore collection (default: "yourFirestoreCollection")
-cf, --contentField [contentField] contentField (default: "contentField")
-vf, --vectorField [vectorField] vectorField; default: $contentField + '_' + embedder.name (default: "")
-h, --help display help for command
make:tool
Usage: gkh make:tool [options] <name>
make a tool
genkit docs: https://firebase.google.com/docs/genkit/tool-calling
Arguments:
name tool name
Options:
-d, --description [description] tool description (default: "useful for...")
-h, --help display help for command
make:prompt
Usage: gkh make:prompt [options] <name>
make a prompt
genkit docs: https://firebase.google.com/docs/genkit/dotprompt
Arguments:
name prompt name
Options:
-d, --description [description] prompt description (default: "")
-v, --variant [variant] variant (default: "")
-m, --model [model] model (default: "")
-h, --help display help for command
make:reranker
Usage: gkh make:reranker [options] <name>
make a reranker
genkit docs: https://firebase.google.com/docs/genkit/rag#rerankers_and_two-stage_retrieval
Arguments:
name reranker name
Options:
-k, --topK [topK] topK (default: 10)
-r, --ref [ref] reference of reranker (default: "vertexai/semantic-ranker-512")
-h, --help display help for command
docs:gen
Usage: gkh docs:gen [options]
generate openapi documents
Options:
-n, --name <name> name of yaml file (default: "api")
-o, --out <out> output docs directory (default: "./docs")
-e, --env-file <env-file> env file path (default: ".env")
-h, --help display help for command
make:schema
Usage: gkh make:schema [options] <name>
make:schema
Arguments:
name name of schema , ex: users
Options:
-h, --help display help for command
FAQ:
Q: I don't see any flows on Developer UI.
A: run
gkh add:getAllFlows
OR add this lines to yoursrc/index.ts
:
// configureGenkit({}) ...
// read all flows in `src/flows` folder
const libFlowsPath = path.join(__dirname, "flows");
fs.readdirSync(libFlowsPath).forEach((name) => {
const flowDir = path.join(libFlowsPath, name);
try {
require(path.join(flowDir, "flows")); // require flows.ts
} catch (e) {
console.warn(
"flow folder `" + name + "`shoud contains flows.ts or flows.js",
);
}
});
// startFlowsServer();
Author:
ClassFunc Softwares JSC (https://classfunc.com)
License:
MIT
3.0.1
7 months ago
3.0.0
7 months ago
2.3.7
9 months ago
2.3.6
9 months ago
2.3.5
9 months ago
2.3.4
9 months ago
2.3.3
9 months ago
2.3.2
9 months ago
2.3.1
9 months ago
2.3.0
9 months ago
2.2.2
10 months ago
2.2.1
10 months ago
2.2.0
10 months ago
2.1.7
10 months ago
2.1.6
10 months ago
2.1.5
10 months ago
2.1.4
10 months ago
2.1.3
10 months ago
2.1.2
10 months ago
2.1.1
10 months ago
2.1.0
10 months ago
2.0.0
10 months ago
1.1.8
10 months ago
1.1.7
10 months ago
1.1.6
10 months ago
1.1.5
10 months ago
1.1.4
10 months ago
1.1.3
10 months ago
1.1.2
10 months ago
1.1.1
10 months ago
1.1.0
10 months ago
1.0.7
10 months ago
1.0.6
10 months ago
1.0.5
10 months ago
1.0.3
10 months ago
1.0.2
10 months ago
1.0.1
10 months ago
1.0.0
10 months ago