mirror of
https://github.com/run-llama/LlamaIndexTS.git
synced 2026-07-02 20:13:52 -04:00
Compare commits
34 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| c1c58feed2 | |||
| 7ad3411766 | |||
| a1fdb07b96 | |||
| 5da5b3c89c | |||
| ddc0eafbaa | |||
| 1782554488 | |||
| a1b1598bc6 | |||
| b02847ae91 | |||
| 50acb4821e | |||
| 47a5b94b0c | |||
| d2be868b93 | |||
| 50d42c4129 | |||
| 848b97d4d0 | |||
| c5796b8d2d | |||
| 579ca0cf60 | |||
| f7e670c8d9 | |||
| 9ff971435c | |||
| 7c9d0e24c4 | |||
| af3f86694b | |||
| 5cce681f62 | |||
| 48b0d88941 | |||
| f18577263a | |||
| 214e133e92 | |||
| ae58862669 | |||
| 5a0ed1f990 | |||
| 36773a82b6 | |||
| 891562d598 | |||
| 93852e15fd | |||
| e1320b08a8 | |||
| 8eeac3310f | |||
| 984a573068 | |||
| f0160d9646 | |||
| 39758ab018 | |||
| f631d4f7d6 |
+54
-1
@@ -38,6 +38,7 @@ npm install -g pnpm
|
||||
|
||||
```shell
|
||||
pnpm install
|
||||
pnpm install -g tsx
|
||||
```
|
||||
|
||||
### Build the packages
|
||||
@@ -48,6 +49,56 @@ To build all packages, run:
|
||||
pnpm build
|
||||
```
|
||||
|
||||
### Start Developing
|
||||
|
||||
You can launch the package in dev-mode by running:
|
||||
|
||||
```shell
|
||||
pnpm dev
|
||||
```
|
||||
|
||||
This will use turbo to run all packages in watch-mode. This means you can make changes and have them automatically built.
|
||||
|
||||
If you want to customize what packages are built/watched, you can run turbo directly and adjust the filter:
|
||||
|
||||
```shell
|
||||
pnpm turbo run dev --filter="./packages/core" --concurrency=100
|
||||
```
|
||||
|
||||
In another terminal, you can write and run any script needed to quickly test your changes. For example:
|
||||
|
||||
```typescript
|
||||
import { createMemory, staticBlock } from "@llamaindex/core/memory";
|
||||
|
||||
// Create memory with predefined context
|
||||
const memory = createMemory({
|
||||
memoryBlocks: [
|
||||
staticBlock({
|
||||
content:
|
||||
"The user is a software engineer who loves TypeScript and LlamaIndex.",
|
||||
messageRole: "system",
|
||||
}),
|
||||
],
|
||||
});
|
||||
|
||||
async function main() {
|
||||
const result = await memory.getLLM();
|
||||
console.log(result);
|
||||
}
|
||||
|
||||
void main().catch(console.error);
|
||||
```
|
||||
|
||||
And run it with:
|
||||
|
||||
```shell
|
||||
pnpm exec tsx my_script.ts
|
||||
```
|
||||
|
||||
This flow allows you to easily test your changes without having to build the entire project.
|
||||
|
||||
Once you are happy with your changes, be sure to add tests (and confirm existing tests are passing!).
|
||||
|
||||
### Run tests
|
||||
|
||||
#### Unit tests
|
||||
@@ -92,7 +143,7 @@ Before sending a PR, make sure of the following:
|
||||
3. If you have a new feature, add a new example in the `examples` folder.
|
||||
4. You have a descriptive changeset for each PR:
|
||||
|
||||
### Changesets
|
||||
### Bumping the versions of packages you've modified
|
||||
|
||||
We use [changesets](https://github.com/changesets/changesets) for managing versions and changelogs. To create a new
|
||||
changeset, run in the root folder:
|
||||
@@ -101,6 +152,8 @@ changeset, run in the root folder:
|
||||
pnpm changeset
|
||||
```
|
||||
|
||||
You will be prompted to choose what packages need their versions bumped, and what kind of bump (major, minor or patch) is needed. Once you carry out this operation, the bumping will be automatic after the PR is merged.
|
||||
|
||||
## Publishing (maintainers only)
|
||||
|
||||
The [Release Github Action](.github/workflows/release.yml) is automatically generating and updating a
|
||||
|
||||
@@ -1,5 +1,74 @@
|
||||
# @llamaindex/doc
|
||||
|
||||
## 0.2.40
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [7ad3411]
|
||||
- Updated dependencies [5da5b3c]
|
||||
- Updated dependencies [a1fdb07]
|
||||
- @llamaindex/core@0.6.15
|
||||
- @llamaindex/workflow@1.1.15
|
||||
- @llamaindex/openai@0.4.9
|
||||
- @llamaindex/cloud@4.0.24
|
||||
- llamaindex@0.11.19
|
||||
- @llamaindex/node-parser@2.0.15
|
||||
- @llamaindex/readers@3.1.14
|
||||
|
||||
## 0.2.39
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [a1b1598]
|
||||
- @llamaindex/cloud@4.0.23
|
||||
- llamaindex@0.11.18
|
||||
|
||||
## 0.2.38
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [d2be868]
|
||||
- @llamaindex/cloud@4.0.22
|
||||
- llamaindex@0.11.17
|
||||
|
||||
## 0.2.37
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [579ca0c]
|
||||
- @llamaindex/cloud@4.0.21
|
||||
- llamaindex@0.11.16
|
||||
|
||||
## 0.2.36
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [48b0d88]
|
||||
- Updated dependencies [f185772]
|
||||
- @llamaindex/cloud@4.0.20
|
||||
- llamaindex@0.11.15
|
||||
|
||||
## 0.2.35
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [5a0ed1f]
|
||||
- Updated dependencies [5a0ed1f]
|
||||
- Updated dependencies [8eeac33]
|
||||
- @llamaindex/cloud@4.0.19
|
||||
- @llamaindex/core@0.6.14
|
||||
- llamaindex@0.11.14
|
||||
- @llamaindex/node-parser@2.0.14
|
||||
- @llamaindex/openai@0.4.8
|
||||
- @llamaindex/readers@3.1.13
|
||||
- @llamaindex/workflow@1.1.14
|
||||
|
||||
## 0.2.34
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 39758ab: Add title to homepage header
|
||||
|
||||
## 0.2.33
|
||||
|
||||
### Patch Changes
|
||||
|
||||
+11
-11
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@llamaindex/doc",
|
||||
"version": "0.2.33",
|
||||
"version": "0.2.40",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"postinstall": "fumadocs-mdx",
|
||||
@@ -35,7 +35,7 @@
|
||||
"@radix-ui/react-tooltip": "^1.1.4",
|
||||
"@scalar/api-client-react": "^1.1.25",
|
||||
"@vercel/functions": "^1.5.0",
|
||||
"ai": "^3.4.33",
|
||||
"ai": "^4.3.17",
|
||||
"class-variance-authority": "^0.7.0",
|
||||
"clsx": "2.1.1",
|
||||
"foxact": "^0.2.41",
|
||||
@@ -50,7 +50,7 @@
|
||||
"hast-util-to-jsx-runtime": "^2.3.2",
|
||||
"llamaindex": "workspace:*",
|
||||
"lucide-react": "^0.460.0",
|
||||
"next": "^15.3.0",
|
||||
"next": "^15.3.3",
|
||||
"next-themes": "^0.4.3",
|
||||
"react": "^19.1.0",
|
||||
"react-dom": "^19.1.0",
|
||||
@@ -70,30 +70,30 @@
|
||||
"twoslash": "^0.3.1",
|
||||
"use-stick-to-bottom": "^1.0.42",
|
||||
"web-tree-sitter": "^0.24.4",
|
||||
"zod": "^3.25.67"
|
||||
"zod": "^3.25.76"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@next/env": "^15.3.0",
|
||||
"@tailwindcss/postcss": "^4.0.9",
|
||||
"@types/mdx": "^2.0.13",
|
||||
"@types/node": "22.9.0",
|
||||
"@types/react": "^19.0.10",
|
||||
"@types/react-dom": "^19.0.4",
|
||||
"@types/node": "24.0.13",
|
||||
"@types/react": "^19.1.8",
|
||||
"@types/react-dom": "^19.1.6",
|
||||
"autoprefixer": "^10.4.20",
|
||||
"cross-env": "^7.0.3",
|
||||
"fast-glob": "^3.3.2",
|
||||
"gray-matter": "^4.0.3",
|
||||
"postcss": "^8.5.3",
|
||||
"postcss": "^8.5.6",
|
||||
"raw-loader": "^4.0.2",
|
||||
"remark": "^15.0.1",
|
||||
"remark-gfm": "^4.0.0",
|
||||
"remark-mdx": "^3.1.0",
|
||||
"remark-stringify": "^11.0.0",
|
||||
"tailwindcss": "^4.0.9",
|
||||
"tsx": "^4.19.3",
|
||||
"tailwindcss": "^4.1.11",
|
||||
"tsx": "^4.20.3",
|
||||
"typedoc": "0.28.3",
|
||||
"typedoc-plugin-markdown": "^4.6.2",
|
||||
"typedoc-plugin-merge-modules": " ^7.0.0",
|
||||
"typescript": "^5.7.3"
|
||||
"typescript": "^5.8.3"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { MockLLM } from "@llamaindex/core/utils";
|
||||
import { MockLLM } from "@llamaindex/core/llms/mock";
|
||||
import { LlamaIndexAdapter, type Message } from "ai";
|
||||
import { Settings, SimpleChatEngine, type ChatMessage } from "llamaindex";
|
||||
import { NextResponse, type NextRequest } from "next/server";
|
||||
|
||||
@@ -32,6 +32,9 @@ export default function Layout({ children }: { children: ReactNode }) {
|
||||
sizes="16x16"
|
||||
href="/favicon-16x16.png"
|
||||
/>
|
||||
<title>
|
||||
LlamaIndex.TS - Build LLM-powered document agents and workflows
|
||||
</title>
|
||||
</head>
|
||||
<body className="flex min-h-screen flex-col">
|
||||
<TooltipProvider>
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@cloudflare/workers-types": "^4.20241112.0",
|
||||
"typescript": "^5.7.3",
|
||||
"typescript": "^5.8.3",
|
||||
"wrangler": "^3.89.0"
|
||||
},
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,5 +1,41 @@
|
||||
# @llamaindex/cloudflare-worker-agent-test
|
||||
|
||||
## 0.0.180
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.19
|
||||
|
||||
## 0.0.179
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.18
|
||||
|
||||
## 0.0.178
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.17
|
||||
|
||||
## 0.0.177
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.16
|
||||
|
||||
## 0.0.176
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.15
|
||||
|
||||
## 0.0.175
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.14
|
||||
|
||||
## 0.0.174
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@llamaindex/cloudflare-worker-agent-test",
|
||||
"version": "0.0.174",
|
||||
"version": "0.0.180",
|
||||
"type": "module",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
@@ -16,7 +16,7 @@
|
||||
"@cloudflare/workers-types": "^4.20241112.0",
|
||||
"@vitest/runner": "2.1.5",
|
||||
"@vitest/snapshot": "2.1.5",
|
||||
"typescript": "^5.7.3",
|
||||
"typescript": "^5.8.3",
|
||||
"vitest": "2.1.5",
|
||||
"wrangler": "^3.87.0"
|
||||
},
|
||||
|
||||
@@ -1,5 +1,48 @@
|
||||
# @llamaindex/llama-parse-browser-test
|
||||
|
||||
## 0.0.79
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- @llamaindex/cloud@4.0.24
|
||||
|
||||
## 0.0.78
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [a1b1598]
|
||||
- @llamaindex/cloud@4.0.23
|
||||
|
||||
## 0.0.77
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [d2be868]
|
||||
- @llamaindex/cloud@4.0.22
|
||||
|
||||
## 0.0.76
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [579ca0c]
|
||||
- @llamaindex/cloud@4.0.21
|
||||
|
||||
## 0.0.75
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [48b0d88]
|
||||
- Updated dependencies [f185772]
|
||||
- @llamaindex/cloud@4.0.20
|
||||
|
||||
## 0.0.74
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [5a0ed1f]
|
||||
- Updated dependencies [5a0ed1f]
|
||||
- @llamaindex/cloud@4.0.19
|
||||
|
||||
## 0.0.73
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@llamaindex/llama-parse-browser-test",
|
||||
"private": true,
|
||||
"version": "0.0.73",
|
||||
"version": "0.0.79",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
@@ -9,7 +9,7 @@
|
||||
"preview": "vite preview"
|
||||
},
|
||||
"devDependencies": {
|
||||
"typescript": "^5.7.3",
|
||||
"typescript": "^5.8.3",
|
||||
"vite": "^6.3.3",
|
||||
"vite-plugin-wasm": "^3.4.1"
|
||||
},
|
||||
|
||||
@@ -1,5 +1,41 @@
|
||||
# @llamaindex/next-agent-test
|
||||
|
||||
## 0.1.180
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.19
|
||||
|
||||
## 0.1.179
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.18
|
||||
|
||||
## 0.1.178
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.17
|
||||
|
||||
## 0.1.177
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.16
|
||||
|
||||
## 0.1.176
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.15
|
||||
|
||||
## 0.1.175
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.14
|
||||
|
||||
## 0.1.174
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@llamaindex/next-agent-test",
|
||||
"version": "0.1.174",
|
||||
"version": "0.1.180",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "next dev",
|
||||
@@ -8,18 +8,18 @@
|
||||
"start": "next start"
|
||||
},
|
||||
"dependencies": {
|
||||
"ai": "^4.0.0",
|
||||
"ai": "^4.3.17",
|
||||
"llamaindex": "workspace:*",
|
||||
"next": "^15.3.0",
|
||||
"next": "^15.3.3",
|
||||
"react": "19.0.0",
|
||||
"react-dom": "19.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^22.9.0",
|
||||
"@types/react": "^19.0.10",
|
||||
"@types/react-dom": "^19.0.4",
|
||||
"eslint": "9.16.0",
|
||||
"eslint-config-next": "15.1.0",
|
||||
"typescript": "^5.7.3"
|
||||
"@types/node": "^24.0.13",
|
||||
"@types/react": "^19.1.8",
|
||||
"@types/react-dom": "^19.1.6",
|
||||
"eslint": "9.30.1",
|
||||
"eslint-config-next": "15.3.5",
|
||||
"typescript": "^5.8.3"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,41 @@
|
||||
# test-edge-runtime
|
||||
|
||||
## 0.1.179
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.19
|
||||
|
||||
## 0.1.178
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.18
|
||||
|
||||
## 0.1.177
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.17
|
||||
|
||||
## 0.1.176
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.16
|
||||
|
||||
## 0.1.175
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.15
|
||||
|
||||
## 0.1.174
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.14
|
||||
|
||||
## 0.1.173
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@llamaindex/nextjs-edge-runtime-test",
|
||||
"version": "0.1.173",
|
||||
"version": "0.1.179",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "next dev",
|
||||
@@ -9,14 +9,14 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"llamaindex": "workspace:*",
|
||||
"next": "^15.3.0",
|
||||
"next": "^15.3.3",
|
||||
"react": "^19.1.0",
|
||||
"react-dom": "^19.1.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^22.9.0",
|
||||
"@types/react": "^19.0.10",
|
||||
"@types/react-dom": "^19.0.4",
|
||||
"typescript": "^5.7.3"
|
||||
"@types/node": "^24.0.13",
|
||||
"@types/react": "^19.1.8",
|
||||
"@types/react-dom": "^19.1.6",
|
||||
"typescript": "^5.8.3"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,45 @@
|
||||
# @llamaindex/next-node-runtime
|
||||
|
||||
## 0.1.48
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.19
|
||||
- @llamaindex/huggingface@0.1.19
|
||||
- @llamaindex/readers@3.1.14
|
||||
|
||||
## 0.1.47
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.18
|
||||
|
||||
## 0.1.46
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.17
|
||||
|
||||
## 0.1.45
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.16
|
||||
|
||||
## 0.1.44
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.15
|
||||
|
||||
## 0.1.43
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.14
|
||||
- @llamaindex/huggingface@0.1.18
|
||||
- @llamaindex/readers@3.1.13
|
||||
|
||||
## 0.1.42
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@llamaindex/next-node-runtime-test",
|
||||
"version": "0.1.42",
|
||||
"version": "0.1.48",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "next dev",
|
||||
@@ -11,16 +11,16 @@
|
||||
"@llamaindex/huggingface": "workspace:*",
|
||||
"@llamaindex/readers": "workspace:*",
|
||||
"llamaindex": "workspace:*",
|
||||
"next": "^15.3.0",
|
||||
"next": "^15.3.3",
|
||||
"react": "19.0.0",
|
||||
"react-dom": "19.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^22.9.0",
|
||||
"@types/react": "^19.0.10",
|
||||
"@types/react-dom": "^19.0.4",
|
||||
"eslint": "9.16.0",
|
||||
"eslint-config-next": "15.1.0",
|
||||
"typescript": "^5.7.3"
|
||||
"@types/node": "^24.0.13",
|
||||
"@types/react": "^19.1.8",
|
||||
"@types/react-dom": "^19.1.6",
|
||||
"eslint": "9.30.1",
|
||||
"eslint-config-next": "15.3.5",
|
||||
"typescript": "^5.8.3"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,41 @@
|
||||
# vite-import-llamaindex
|
||||
|
||||
## 0.0.46
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.19
|
||||
|
||||
## 0.0.45
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.18
|
||||
|
||||
## 0.0.44
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.17
|
||||
|
||||
## 0.0.43
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.16
|
||||
|
||||
## 0.0.42
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.15
|
||||
|
||||
## 0.0.41
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.14
|
||||
|
||||
## 0.0.40
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "vite-import-llamaindex",
|
||||
"private": true,
|
||||
"version": "0.0.40",
|
||||
"version": "0.0.46",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"build": "vite build",
|
||||
@@ -15,7 +15,7 @@
|
||||
"devDependencies": {
|
||||
"@size-limit/preset-big-lib": "^11.1.6",
|
||||
"size-limit": "^11.1.6",
|
||||
"typescript": "^5.7.3",
|
||||
"typescript": "^5.8.3",
|
||||
"vite": "^6.3.3"
|
||||
},
|
||||
"dependencies": {
|
||||
|
||||
@@ -1,5 +1,41 @@
|
||||
# @llamaindex/waku-query-engine-test
|
||||
|
||||
## 0.0.180
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.19
|
||||
|
||||
## 0.0.179
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.18
|
||||
|
||||
## 0.0.178
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.17
|
||||
|
||||
## 0.0.177
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.16
|
||||
|
||||
## 0.0.176
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.15
|
||||
|
||||
## 0.0.175
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.14
|
||||
|
||||
## 0.0.174
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@llamaindex/waku-query-engine-test",
|
||||
"version": "0.0.174",
|
||||
"version": "0.0.180",
|
||||
"type": "module",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
@@ -18,10 +18,10 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@tailwindcss/postcss": "^4.1.4",
|
||||
"@types/react": "19.0.10",
|
||||
"@types/react-dom": "19.0.4",
|
||||
"@types/react": "19.1.8",
|
||||
"@types/react-dom": "19.1.6",
|
||||
"rollup": "4.38.0",
|
||||
"tailwindcss": "^4.1.4",
|
||||
"typescript": "5.7.3"
|
||||
"tailwindcss": "^4.1.11",
|
||||
"typescript": "5.8.3"
|
||||
}
|
||||
}
|
||||
|
||||
+4
-4
@@ -19,14 +19,14 @@
|
||||
"@llamaindex/openai": "workspace:*",
|
||||
"@llamaindex/pinecone": "workspace:*",
|
||||
"@llamaindex/postgres": "workspace:*",
|
||||
"@types/node": "^22.9.0",
|
||||
"@types/node": "^24.0.13",
|
||||
"@types/pg": "^8.11.8",
|
||||
"consola": "^3.2.3",
|
||||
"dotenv": "^16.4.5",
|
||||
"dotenv": "^17.2.0",
|
||||
"llamaindex": "workspace:*",
|
||||
"pg": "^8.12.0",
|
||||
"pgvector": "0.2.0",
|
||||
"tsx": "^4.19.3",
|
||||
"zod": "^3.25.67"
|
||||
"tsx": "^4.20.3",
|
||||
"zod": "^3.25.76"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,123 @@
|
||||
# examples
|
||||
|
||||
## 0.3.30
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [7ad3411]
|
||||
- Updated dependencies [5da5b3c]
|
||||
- Updated dependencies [a1fdb07]
|
||||
- Updated dependencies [ddc0eaf]
|
||||
- @llamaindex/core@0.6.15
|
||||
- @llamaindex/tools@0.1.5
|
||||
- @llamaindex/workflow@1.1.15
|
||||
- @llamaindex/openai@0.4.9
|
||||
- @llamaindex/anthropic@0.3.17
|
||||
- @llamaindex/cloud@4.0.24
|
||||
- llamaindex@0.11.19
|
||||
- @llamaindex/node-parser@2.0.15
|
||||
- @llamaindex/assemblyai@0.1.14
|
||||
- @llamaindex/clip@0.0.65
|
||||
- @llamaindex/cohere@0.0.29
|
||||
- @llamaindex/deepinfra@0.0.65
|
||||
- @llamaindex/discord@0.1.14
|
||||
- @llamaindex/google@0.3.14
|
||||
- @llamaindex/huggingface@0.1.19
|
||||
- @llamaindex/jinaai@0.0.25
|
||||
- @llamaindex/mistral@0.1.15
|
||||
- @llamaindex/mixedbread@0.0.29
|
||||
- @llamaindex/notion@0.1.14
|
||||
- @llamaindex/ollama@0.1.15
|
||||
- @llamaindex/perplexity@0.0.22
|
||||
- @llamaindex/portkey-ai@0.0.57
|
||||
- @llamaindex/replicate@0.0.57
|
||||
- @llamaindex/bm25-retriever@0.0.4
|
||||
- @llamaindex/astra@0.0.29
|
||||
- @llamaindex/azure@0.1.26
|
||||
- @llamaindex/chroma@0.0.29
|
||||
- @llamaindex/elastic-search@0.1.15
|
||||
- @llamaindex/firestore@1.0.22
|
||||
- @llamaindex/milvus@0.1.24
|
||||
- @llamaindex/mongodb@0.0.30
|
||||
- @llamaindex/pinecone@0.1.15
|
||||
- @llamaindex/postgres@0.0.58
|
||||
- @llamaindex/qdrant@0.1.25
|
||||
- @llamaindex/supabase@0.1.15
|
||||
- @llamaindex/upstash@0.0.29
|
||||
- @llamaindex/weaviate@0.0.30
|
||||
- @llamaindex/vercel@0.1.15
|
||||
- @llamaindex/voyage-ai@1.0.21
|
||||
- @llamaindex/readers@3.1.14
|
||||
- @llamaindex/deepseek@0.0.26
|
||||
- @llamaindex/fireworks@0.0.25
|
||||
- @llamaindex/groq@0.0.81
|
||||
- @llamaindex/together@0.0.25
|
||||
- @llamaindex/vllm@0.0.51
|
||||
- @llamaindex/xai@0.0.12
|
||||
|
||||
## 0.3.29
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [af3f866]
|
||||
- @llamaindex/deepseek@0.0.25
|
||||
|
||||
## 0.3.28
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 36773a8: Fixed start script, reverted some changes to imports
|
||||
- 891562d: Fix xai dependency in the examples
|
||||
- Updated dependencies [5a0ed1f]
|
||||
- Updated dependencies [5a0ed1f]
|
||||
- Updated dependencies [8eeac33]
|
||||
- @llamaindex/cloud@4.0.19
|
||||
- @llamaindex/core@0.6.14
|
||||
- llamaindex@0.11.14
|
||||
- @llamaindex/node-parser@2.0.14
|
||||
- @llamaindex/anthropic@0.3.16
|
||||
- @llamaindex/assemblyai@0.1.13
|
||||
- @llamaindex/clip@0.0.64
|
||||
- @llamaindex/cohere@0.0.28
|
||||
- @llamaindex/deepinfra@0.0.64
|
||||
- @llamaindex/discord@0.1.13
|
||||
- @llamaindex/google@0.3.13
|
||||
- @llamaindex/huggingface@0.1.18
|
||||
- @llamaindex/jinaai@0.0.24
|
||||
- @llamaindex/mistral@0.1.14
|
||||
- @llamaindex/mixedbread@0.0.28
|
||||
- @llamaindex/notion@0.1.13
|
||||
- @llamaindex/ollama@0.1.14
|
||||
- @llamaindex/openai@0.4.8
|
||||
- @llamaindex/perplexity@0.0.21
|
||||
- @llamaindex/portkey-ai@0.0.56
|
||||
- @llamaindex/replicate@0.0.56
|
||||
- @llamaindex/bm25-retriever@0.0.3
|
||||
- @llamaindex/astra@0.0.28
|
||||
- @llamaindex/azure@0.1.25
|
||||
- @llamaindex/chroma@0.0.28
|
||||
- @llamaindex/elastic-search@0.1.14
|
||||
- @llamaindex/firestore@1.0.21
|
||||
- @llamaindex/milvus@0.1.23
|
||||
- @llamaindex/mongodb@0.0.29
|
||||
- @llamaindex/pinecone@0.1.14
|
||||
- @llamaindex/postgres@0.0.57
|
||||
- @llamaindex/qdrant@0.1.24
|
||||
- @llamaindex/supabase@0.1.14
|
||||
- @llamaindex/upstash@0.0.28
|
||||
- @llamaindex/weaviate@0.0.29
|
||||
- @llamaindex/vercel@0.1.14
|
||||
- @llamaindex/voyage-ai@1.0.20
|
||||
- @llamaindex/readers@3.1.13
|
||||
- @llamaindex/tools@0.1.4
|
||||
- @llamaindex/workflow@1.1.14
|
||||
- @llamaindex/deepseek@0.0.24
|
||||
- @llamaindex/fireworks@0.0.24
|
||||
- @llamaindex/groq@0.0.80
|
||||
- @llamaindex/together@0.0.24
|
||||
- @llamaindex/vllm@0.0.50
|
||||
- @llamaindex/xai@0.0.11
|
||||
|
||||
## 0.3.27
|
||||
|
||||
### Patch Changes
|
||||
|
||||
+31
-7
@@ -1,9 +1,10 @@
|
||||
# LlamaIndexTS Examples
|
||||
|
||||
Before running any of the code examples,
|
||||
make sure you have basic knowledge of the [LlamaIndexTS](https://ts.llamaindex.ai/).
|
||||
This package contains several examples of how to use LlamaIndexTS.
|
||||
|
||||
## Usage
|
||||
Most examples will use OpenAI by default, so be sure to set your API key.
|
||||
|
||||
## Running Examples
|
||||
|
||||
```shell
|
||||
# export your API key
|
||||
@@ -12,8 +13,31 @@ export OPENAI_API_KEY="sk-..."
|
||||
npx tsx ./rag/chatEngine.ts
|
||||
```
|
||||
|
||||
## Build your own RAG app
|
||||
## Recommended Starter Examples
|
||||
|
||||
```shell
|
||||
npx create llama
|
||||
```
|
||||
Agents:
|
||||
|
||||
- [Basic OpenAI Agent with Tools](./agents/agent/openai.ts)
|
||||
- [Agent with MCP Tools](./agents/agent/mcp-tools.ts)
|
||||
- [Customizing Memory](./agents/memory/agent-memory.ts)
|
||||
|
||||
Workflows:
|
||||
|
||||
- [Workflow basics](./agents/workflow/joke.ts)
|
||||
- [Find more workflow examples in the `workflows-ts` repo!](https://github.com/run-llama/workflows-ts)
|
||||
|
||||
Indexing, Retrieval, and Querying:
|
||||
|
||||
- [Basic Vector Indexing + Query Engine](./index/vectorIndex.ts)
|
||||
- [Agent + Query Engine Tool](./agents/agent/query-tool.ts)
|
||||
|
||||
Multimodal:
|
||||
|
||||
- [Multimodal RAG](./multimodal/rag.ts)
|
||||
- [Multimodal Chat](./multimodal/context.ts)
|
||||
|
||||
Some more general folders that might be useful to explore:
|
||||
|
||||
- [storage](./storage/): Examples with various vector stores
|
||||
- [readers](./readers/): Examples of how to use the various readers
|
||||
- [models](./models/): Examples of how to use the various LLMs and embedding models from many providers
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
*/
|
||||
import { openai } from "@llamaindex/openai";
|
||||
import { agent } from "@llamaindex/workflow";
|
||||
import { getWeatherTool } from "../../deprecated/agents/utils/tools";
|
||||
import { getWeatherTool } from "../tools/tools";
|
||||
|
||||
async function main() {
|
||||
const weatherAgent = agent({
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { ollama } from "@llamaindex/ollama";
|
||||
import { agent } from "@llamaindex/workflow";
|
||||
import { getWeatherTool } from "../../deprecated/agents/utils/tools";
|
||||
import { getWeatherTool } from "../tools/tools";
|
||||
|
||||
async function main() {
|
||||
const myAgent = agent({
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { OpenAI } from "@llamaindex/openai";
|
||||
import { openai } from "@llamaindex/openai";
|
||||
|
||||
async function main() {
|
||||
const llm = new OpenAI({ model: "gpt-4-turbo" });
|
||||
const llm = openai({ model: "gpt-4.1-mini" });
|
||||
const args: Parameters<typeof llm.chat>[0] = {
|
||||
additionalChatOptions: {
|
||||
tool_choice: "auto",
|
||||
@@ -0,0 +1,46 @@
|
||||
import { openai } from "@llamaindex/openai";
|
||||
import { tool } from "llamaindex";
|
||||
import z from "zod";
|
||||
|
||||
import { ChatMessage } from "llamaindex";
|
||||
|
||||
async function main() {
|
||||
const llm = openai({ model: "gpt-4.1-mini" });
|
||||
const messages = [
|
||||
{
|
||||
content: `What's the weather like in San Francisco?`,
|
||||
role: "user",
|
||||
} as ChatMessage,
|
||||
];
|
||||
|
||||
let exit = false;
|
||||
do {
|
||||
const { stream, newMessages, toolCalls } = await llm.exec({
|
||||
messages,
|
||||
tools: [
|
||||
tool({
|
||||
name: "get_weather",
|
||||
description: "Get the current weather for a location",
|
||||
parameters: z.object({
|
||||
address: z.string().describe("The address"),
|
||||
}),
|
||||
execute: ({ address }) => {
|
||||
return `It's sunny in ${address}!`;
|
||||
},
|
||||
}),
|
||||
],
|
||||
stream: true,
|
||||
});
|
||||
for await (const chunk of stream) {
|
||||
process.stdout.write(chunk.delta);
|
||||
}
|
||||
messages.push(...newMessages());
|
||||
// exit condition to stop the agent loop
|
||||
// here we can also check for specific tool calls or limit the number of llm.exec calls
|
||||
exit = toolCalls.length === 0;
|
||||
} while (!exit);
|
||||
}
|
||||
|
||||
(async function () {
|
||||
await main();
|
||||
})();
|
||||
@@ -0,0 +1,43 @@
|
||||
import { openai } from "@llamaindex/openai";
|
||||
import { ChatMessage, tool } from "llamaindex";
|
||||
import z from "zod";
|
||||
|
||||
async function main() {
|
||||
const llm = openai({ model: "gpt-4.1-mini" });
|
||||
const messages = [
|
||||
{
|
||||
content: `What's the weather like in San Francisco?`,
|
||||
role: "user",
|
||||
} as ChatMessage,
|
||||
];
|
||||
|
||||
let exit = false;
|
||||
do {
|
||||
const { newMessages, toolCalls } = await llm.exec({
|
||||
messages,
|
||||
tools: [
|
||||
tool({
|
||||
name: "get_weather",
|
||||
description: "Get the current weather for a location",
|
||||
parameters: z.object({
|
||||
address: z.string().describe("The address"),
|
||||
}),
|
||||
execute: ({ address }) => {
|
||||
return `It's sunny in ${address}!`;
|
||||
},
|
||||
}),
|
||||
],
|
||||
});
|
||||
console.log(newMessages);
|
||||
messages.push(...newMessages);
|
||||
// exit condition to stop the agent loop
|
||||
// here we can also check for specific tool calls or limit the number of llm.exec calls
|
||||
exit = toolCalls.length === 0;
|
||||
} while (!exit);
|
||||
}
|
||||
|
||||
(async function () {
|
||||
console.log("Starting...");
|
||||
await main();
|
||||
console.log("Done");
|
||||
})();
|
||||
@@ -4,7 +4,7 @@ import {
|
||||
getCurrentIDTool,
|
||||
getUserInfoTool,
|
||||
getWeatherTool,
|
||||
} from "./utils/tools";
|
||||
} from "../../agents/tools/tools";
|
||||
|
||||
async function main() {
|
||||
// Create an OpenAIAgent with the function tools
|
||||
|
||||
@@ -3,7 +3,7 @@ import {
|
||||
getCurrentIDTool,
|
||||
getUserInfoTool,
|
||||
getWeatherTool,
|
||||
} from "./utils/tools";
|
||||
} from "../../agents/tools/tools";
|
||||
|
||||
async function main() {
|
||||
// Create an OpenAIAgent with the function tools
|
||||
|
||||
@@ -15,15 +15,15 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@eslint/js": "^9.25.0",
|
||||
"@types/react": "^19.1.2",
|
||||
"@types/react-dom": "^19.1.2",
|
||||
"@types/react": "^19.1.8",
|
||||
"@types/react-dom": "^19.1.6",
|
||||
"@vitejs/plugin-react": "^4.5.2",
|
||||
"eslint": "^9.25.0",
|
||||
"eslint": "^9.30.1",
|
||||
"eslint-plugin-react-hooks": "^5.2.0",
|
||||
"eslint-plugin-react-refresh": "^0.4.19",
|
||||
"globals": "^16.0.0",
|
||||
"typescript": "~5.8.3",
|
||||
"typescript-eslint": "^8.30.1",
|
||||
"typescript-eslint": "^8.36.0",
|
||||
"vite": "^6.3.5"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,6 +30,12 @@ async function main() {
|
||||
);
|
||||
// and print out the text part
|
||||
console.log(textPart?.text);
|
||||
|
||||
const imageId = response.message.options?.image_id;
|
||||
if (imageId) {
|
||||
console.log("Image ID for multi-turn generation:", imageId);
|
||||
console.log("Use this image_id in subsequent requests to modify the image");
|
||||
}
|
||||
}
|
||||
|
||||
main().catch(console.error);
|
||||
|
||||
@@ -0,0 +1,89 @@
|
||||
import { openaiResponses } from "@llamaindex/openai";
|
||||
import fs from "fs";
|
||||
import { MessageContentDetail } from "llamaindex";
|
||||
|
||||
async function main() {
|
||||
const llm = openaiResponses({
|
||||
model: "gpt-4.1-mini",
|
||||
builtInTools: [{ type: "image_generation" }],
|
||||
});
|
||||
|
||||
// First turn: Generate initial image
|
||||
console.log("=== First Turn: Generate initial image ===");
|
||||
const firstResponse = await llm.chat({
|
||||
messages: [
|
||||
{
|
||||
role: "user",
|
||||
content:
|
||||
"Generate an image of a cute tiny llama wearing a hat playing with a cat on a meadow",
|
||||
},
|
||||
],
|
||||
});
|
||||
|
||||
const firstContent = firstResponse.message.content as MessageContentDetail[];
|
||||
const firstImagePart = firstContent.find((part) => part.type === "image");
|
||||
const firstTextPart = firstContent.find((part) => part.type === "text");
|
||||
|
||||
// Save the first image
|
||||
if (firstImagePart?.data) {
|
||||
fs.writeFileSync(
|
||||
"llama-initial.png",
|
||||
Buffer.from(firstImagePart.data as string, "base64"),
|
||||
);
|
||||
console.log("First image saved as 'llama-initial.png'");
|
||||
}
|
||||
|
||||
if (firstTextPart?.text) {
|
||||
console.log("First response:", firstTextPart.text);
|
||||
}
|
||||
|
||||
// Get the image_id from the response options for multi-turn
|
||||
const imageId = firstResponse.message.options?.image_id;
|
||||
console.log("Image ID for multi-turn:", imageId);
|
||||
|
||||
if (imageId) {
|
||||
// Second turn: Modify the image using the image_id
|
||||
console.log("\n=== Second Turn: Modify the image ===");
|
||||
const secondResponse = await llm.chat({
|
||||
messages: [
|
||||
{
|
||||
role: "user",
|
||||
content:
|
||||
"Generate an image of a cute tiny llama wearing a hat playing with a cat on a meadow",
|
||||
},
|
||||
{
|
||||
role: "assistant",
|
||||
content: firstContent,
|
||||
options: { image_id: imageId },
|
||||
},
|
||||
{
|
||||
role: "user",
|
||||
content:
|
||||
"Now add a rainbow in the background and make the llama's hat blue",
|
||||
},
|
||||
],
|
||||
});
|
||||
|
||||
const secondContent = secondResponse.message
|
||||
.content as MessageContentDetail[];
|
||||
const secondImagePart = secondContent.find((part) => part.type === "image");
|
||||
const secondTextPart = secondContent.find((part) => part.type === "text");
|
||||
|
||||
// Save the modified image
|
||||
if (secondImagePart?.data) {
|
||||
fs.writeFileSync(
|
||||
"llama-modified.png",
|
||||
Buffer.from(secondImagePart.data as string, "base64"),
|
||||
);
|
||||
console.log("Modified image saved as 'llama-modified.png'");
|
||||
}
|
||||
|
||||
if (secondTextPart?.text) {
|
||||
console.log("Second response:", secondTextPart.text);
|
||||
}
|
||||
} else {
|
||||
console.log("No image_id received, cannot perform multi-turn generation");
|
||||
}
|
||||
}
|
||||
|
||||
main().catch(console.error);
|
||||
+55
-55
@@ -1,80 +1,80 @@
|
||||
{
|
||||
"name": "@llamaindex/examples",
|
||||
"version": "0.3.27",
|
||||
"version": "0.3.30",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"lint": "eslint .",
|
||||
"start": "tsx ./starter.ts"
|
||||
"start": "echo 'To get started, run `npx tsx <path to example>`'"
|
||||
},
|
||||
"dependencies": {
|
||||
"@ai-sdk/openai": "^1.0.5",
|
||||
"@azure/cosmos": "^4.1.1",
|
||||
"@azure/identity": "^4.4.1",
|
||||
"@azure/search-documents": "^12.1.0",
|
||||
"@llamaindex/anthropic": "^0.3.15",
|
||||
"@llamaindex/assemblyai": "^0.1.12",
|
||||
"@llamaindex/astra": "^0.0.27",
|
||||
"@llamaindex/azure": "^0.1.24",
|
||||
"@llamaindex/bm25-retriever": "^0.0.2",
|
||||
"@llamaindex/chroma": "^0.0.27",
|
||||
"@llamaindex/clip": "^0.0.63",
|
||||
"@llamaindex/cloud": "^4.0.18",
|
||||
"@llamaindex/cohere": "^0.0.27",
|
||||
"@llamaindex/core": "^0.6.13",
|
||||
"@llamaindex/deepinfra": "^0.0.63",
|
||||
"@llamaindex/deepseek": "^0.0.23",
|
||||
"@llamaindex/discord": "^0.1.12",
|
||||
"@llamaindex/elastic-search": "^0.1.13",
|
||||
"@llamaindex/anthropic": "^0.3.17",
|
||||
"@llamaindex/assemblyai": "^0.1.14",
|
||||
"@llamaindex/astra": "^0.0.29",
|
||||
"@llamaindex/azure": "^0.1.26",
|
||||
"@llamaindex/bm25-retriever": "^0.0.4",
|
||||
"@llamaindex/chroma": "^0.0.29",
|
||||
"@llamaindex/clip": "^0.0.65",
|
||||
"@llamaindex/cloud": "^4.0.24",
|
||||
"@llamaindex/cohere": "^0.0.29",
|
||||
"@llamaindex/core": "^0.6.15",
|
||||
"@llamaindex/deepinfra": "^0.0.65",
|
||||
"@llamaindex/deepseek": "^0.0.26",
|
||||
"@llamaindex/discord": "^0.1.14",
|
||||
"@llamaindex/elastic-search": "^0.1.15",
|
||||
"@llamaindex/env": "^0.1.30",
|
||||
"@llamaindex/firestore": "^1.0.20",
|
||||
"@llamaindex/fireworks": "^0.0.23",
|
||||
"@llamaindex/google": "^0.3.12",
|
||||
"@llamaindex/groq": "^0.0.79",
|
||||
"@llamaindex/huggingface": "^0.1.17",
|
||||
"@llamaindex/jinaai": "^0.0.23",
|
||||
"@llamaindex/milvus": "^0.1.22",
|
||||
"@llamaindex/mistral": "^0.1.13",
|
||||
"@llamaindex/mixedbread": "^0.0.27",
|
||||
"@llamaindex/mongodb": "^0.0.28",
|
||||
"@llamaindex/node-parser": "^2.0.13",
|
||||
"@llamaindex/notion": "^0.1.12",
|
||||
"@llamaindex/ollama": "^0.1.13",
|
||||
"@llamaindex/openai": "^0.4.7",
|
||||
"@llamaindex/perplexity": "^0.0.20",
|
||||
"@llamaindex/pinecone": "^0.1.13",
|
||||
"@llamaindex/portkey-ai": "^0.0.55",
|
||||
"@llamaindex/postgres": "^0.0.56",
|
||||
"@llamaindex/qdrant": "^0.1.23",
|
||||
"@llamaindex/readers": "^3.1.12",
|
||||
"@llamaindex/replicate": "^0.0.55",
|
||||
"@llamaindex/supabase": "^0.1.13",
|
||||
"@llamaindex/together": "^0.0.23",
|
||||
"@llamaindex/tools": "^0.1.3",
|
||||
"@llamaindex/upstash": "^0.0.27",
|
||||
"@llamaindex/vercel": "^0.1.13",
|
||||
"@llamaindex/vllm": "^0.0.49",
|
||||
"@llamaindex/voyage-ai": "^1.0.19",
|
||||
"@llamaindex/weaviate": "^0.0.28",
|
||||
"@llamaindex/workflow": "^1.1.13",
|
||||
"@llamaindex/xai": "workspace:^0.0.10",
|
||||
"@notionhq/client": "^2.2.15",
|
||||
"@llamaindex/firestore": "^1.0.22",
|
||||
"@llamaindex/fireworks": "^0.0.25",
|
||||
"@llamaindex/google": "^0.3.14",
|
||||
"@llamaindex/groq": "^0.0.81",
|
||||
"@llamaindex/huggingface": "^0.1.19",
|
||||
"@llamaindex/jinaai": "^0.0.25",
|
||||
"@llamaindex/milvus": "^0.1.24",
|
||||
"@llamaindex/mistral": "^0.1.15",
|
||||
"@llamaindex/mixedbread": "^0.0.29",
|
||||
"@llamaindex/mongodb": "^0.0.30",
|
||||
"@llamaindex/node-parser": "^2.0.15",
|
||||
"@llamaindex/notion": "^0.1.14",
|
||||
"@llamaindex/ollama": "^0.1.15",
|
||||
"@llamaindex/openai": "^0.4.9",
|
||||
"@llamaindex/perplexity": "^0.0.22",
|
||||
"@llamaindex/pinecone": "^0.1.15",
|
||||
"@llamaindex/portkey-ai": "^0.0.57",
|
||||
"@llamaindex/postgres": "^0.0.58",
|
||||
"@llamaindex/qdrant": "^0.1.25",
|
||||
"@llamaindex/readers": "^3.1.14",
|
||||
"@llamaindex/replicate": "^0.0.57",
|
||||
"@llamaindex/supabase": "^0.1.15",
|
||||
"@llamaindex/together": "^0.0.25",
|
||||
"@llamaindex/tools": "^0.1.5",
|
||||
"@llamaindex/upstash": "^0.0.29",
|
||||
"@llamaindex/vercel": "^0.1.15",
|
||||
"@llamaindex/vllm": "^0.0.51",
|
||||
"@llamaindex/voyage-ai": "^1.0.21",
|
||||
"@llamaindex/weaviate": "^0.0.30",
|
||||
"@llamaindex/workflow": "^1.1.15",
|
||||
"@llamaindex/xai": "^0.0.12",
|
||||
"@notionhq/client": "^4.0.0",
|
||||
"@pinecone-database/pinecone": "^4.0.0",
|
||||
"@vercel/postgres": "^0.10.0",
|
||||
"ai": "^4.0.0",
|
||||
"ai": "^4.3.17",
|
||||
"ajv": "^8.17.1",
|
||||
"commander": "^12.1.0",
|
||||
"dotenv": "^16.4.5",
|
||||
"dotenv": "^17.2.0",
|
||||
"js-tiktoken": "^1.0.14",
|
||||
"llamaindex": "^0.11.13",
|
||||
"llamaindex": "^0.11.19",
|
||||
"mongodb": "6.7.0",
|
||||
"postgres": "^3.4.4",
|
||||
"wikipedia": "^2.1.2",
|
||||
"zod": "^3.25.67"
|
||||
"zod": "^3.25.76"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^22.9.0",
|
||||
"tsx": "^4.19.3",
|
||||
"typescript": "^5.7.3"
|
||||
"@types/node": "^24.0.13",
|
||||
"tsx": "^4.20.3",
|
||||
"typescript": "^5.8.3"
|
||||
},
|
||||
"stackblitz": {
|
||||
"startCommand": "npm start"
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
packages:
|
||||
- "**"
|
||||
@@ -21,13 +21,14 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@llamaindex/cloud": "workspace:* || ^2.0.24",
|
||||
"@llamaindex/readers": "workspace:* || ^1.0.25",
|
||||
"@llamaindex/excel": "workspace:*",
|
||||
"@llamaindex/readers": "workspace:* || ^1.0.25",
|
||||
"@notionhq/client": "^4.0.0",
|
||||
"llamaindex": "workspace:* || ^0.8.37"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^22.9.0",
|
||||
"tsx": "^4.19.3",
|
||||
"typescript": "^5.7.3"
|
||||
"@types/node": "^24.0.13",
|
||||
"tsx": "^4.20.3",
|
||||
"typescript": "^5.8.3"
|
||||
}
|
||||
}
|
||||
|
||||
Generated
-10114
File diff suppressed because it is too large
Load Diff
+16
-10
@@ -4,7 +4,7 @@
|
||||
"scripts": {
|
||||
"clean": "find . -type d \\( -name .turbo -o -name node_modules -o -name dist -o -name .next -o -name lib \\) -exec rm -rf {} +",
|
||||
"build": "turbo run build --filter=\"./packages/*\" --filter=\"./packages/providers/**\"",
|
||||
"dev": "turbo run dev --filter=\"./packages/*\" --filter=\"./packages/providers/**\"",
|
||||
"dev": "turbo run dev --filter=\"./packages/*\" --filter=\"./packages/providers/**\" --concurrency=100",
|
||||
"format": "prettier --ignore-unknown --cache --check .",
|
||||
"format:write": "prettier --ignore-unknown --write .",
|
||||
"lint": "turbo run lint",
|
||||
@@ -17,18 +17,19 @@
|
||||
"release-snapshot": "pnpm run build && changeset publish --tag snapshot",
|
||||
"new-version": "changeset version && pnpm format:write && pnpm run build",
|
||||
"new-snapshot": "pnpm run build && changeset version --snapshot",
|
||||
"lint-staged": "lint-staged"
|
||||
"lint-staged": "lint-staged",
|
||||
"preinstall": "npx only-allow pnpm"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@changesets/cli": "^2.27.5",
|
||||
"@eslint/js": "^9.25.0",
|
||||
"bunchee": "6.4.0",
|
||||
"eslint": "9.22.0",
|
||||
"eslint-config-next": "^15.1.0",
|
||||
"eslint-config-prettier": "^9.1.0",
|
||||
"eslint-config-turbo": "^2.3.3",
|
||||
"eslint-plugin-react": "7.37.2",
|
||||
"eslint-plugin-turbo": "^2.5.0",
|
||||
"eslint": "9.30.1",
|
||||
"eslint-config-next": "^15.3.5",
|
||||
"eslint-config-prettier": "^10.1.5",
|
||||
"eslint-config-turbo": "^2.5.4",
|
||||
"eslint-plugin-react": "7.37.5",
|
||||
"eslint-plugin-turbo": "^2.5.4",
|
||||
"globals": "^15.12.0",
|
||||
"husky": "^9.1.7",
|
||||
"lint-staged": "^15.2.11",
|
||||
@@ -37,11 +38,16 @@
|
||||
"prettier-plugin-organize-imports": "^4.1.0",
|
||||
"prettier-plugin-tailwindcss": "^0.6.11",
|
||||
"turbo": "^2.4.4",
|
||||
"typescript": "^5.7.3",
|
||||
"typescript-eslint": "^8.18.0",
|
||||
"typescript": "^5.8.3",
|
||||
"typescript-eslint": "^8.36.0",
|
||||
"vitest": "^3.1.1"
|
||||
},
|
||||
"packageManager": "pnpm@10.8.1",
|
||||
"pnpm": {
|
||||
"overrides": {
|
||||
"@notionhq/client": "4.0.0"
|
||||
}
|
||||
},
|
||||
"lint-staged": {
|
||||
"*.{js,jsx,ts,tsx}": [
|
||||
"eslint --fix",
|
||||
|
||||
@@ -1,5 +1,41 @@
|
||||
# @llamaindex/autotool
|
||||
|
||||
## 8.0.19
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.19
|
||||
|
||||
## 8.0.18
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.18
|
||||
|
||||
## 8.0.17
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.17
|
||||
|
||||
## 8.0.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.16
|
||||
|
||||
## 8.0.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.15
|
||||
|
||||
## 8.0.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.14
|
||||
|
||||
## 8.0.13
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,5 +1,47 @@
|
||||
# @llamaindex/autotool-01-node-example
|
||||
|
||||
## 0.0.127
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.19
|
||||
- @llamaindex/autotool@8.0.19
|
||||
|
||||
## 0.0.126
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.18
|
||||
- @llamaindex/autotool@8.0.18
|
||||
|
||||
## 0.0.125
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.17
|
||||
- @llamaindex/autotool@8.0.17
|
||||
|
||||
## 0.0.124
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.16
|
||||
- @llamaindex/autotool@8.0.16
|
||||
|
||||
## 0.0.123
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.15
|
||||
- @llamaindex/autotool@8.0.15
|
||||
|
||||
## 0.0.122
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.14
|
||||
- @llamaindex/autotool@8.0.14
|
||||
|
||||
## 0.0.121
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -8,10 +8,10 @@
|
||||
"openai": "^4.73.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"tsx": "^4.19.3"
|
||||
"tsx": "^4.20.3"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "node --import tsx --import @llamaindex/autotool/node ./src/index.ts"
|
||||
},
|
||||
"version": "0.0.121"
|
||||
"version": "0.0.127"
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
"url": "git+https://github.com/run-llama/LlamaIndexTS.git",
|
||||
"directory": "packages/autotool"
|
||||
},
|
||||
"version": "8.0.13",
|
||||
"version": "8.0.19",
|
||||
"description": "auto transpile your JS function to LLM Agent compatible",
|
||||
"files": [
|
||||
"dist",
|
||||
@@ -74,12 +74,12 @@
|
||||
"devDependencies": {
|
||||
"@swc/types": "^0.1.12",
|
||||
"@types/json-schema": "^7.0.15",
|
||||
"@types/node": "^22.9.0",
|
||||
"@types/node": "^24.0.13",
|
||||
"llamaindex": "workspace:*",
|
||||
"next": "^15.3.0",
|
||||
"next": "^15.3.3",
|
||||
"rollup": "^4.28.1",
|
||||
"tsx": "^4.19.3",
|
||||
"typescript": "^5.7.3",
|
||||
"tsx": "^4.20.3",
|
||||
"typescript": "^5.8.3",
|
||||
"vitest": "^2.1.5",
|
||||
"webpack": "^5.97.1"
|
||||
}
|
||||
|
||||
@@ -1,5 +1,47 @@
|
||||
# @llamaindex/cloud
|
||||
|
||||
## 4.0.24
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [7ad3411]
|
||||
- Updated dependencies [5da5b3c]
|
||||
- @llamaindex/core@0.6.15
|
||||
|
||||
## 4.0.23
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- a1b1598: fix: add generic types into agent data responses
|
||||
|
||||
## 4.0.22
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- d2be868: Bug fixes for new beta agent-data cloud API
|
||||
|
||||
## 4.0.21
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 579ca0c: chore: bump sdk version
|
||||
|
||||
## 4.0.20
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 48b0d88: fix: exports in `api` submodule
|
||||
- f185772: fix(cloud): missing file
|
||||
|
||||
## 4.0.19
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 5a0ed1f: feat: init agent api on cloud sdk
|
||||
- 5a0ed1f: feat: init agent api on cloud sdk
|
||||
- Updated dependencies [8eeac33]
|
||||
- @llamaindex/core@0.6.14
|
||||
|
||||
## 4.0.18
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"type": "module",
|
||||
"main": "./dist/index.cjs",
|
||||
"module": "./dist/index.js",
|
||||
"types": "./dist/index.d.ts",
|
||||
"exports": "./dist/index.js",
|
||||
"private": true
|
||||
}
|
||||
+262
-183
@@ -2519,7 +2519,7 @@
|
||||
"get": {
|
||||
"tags": ["Organizations"],
|
||||
"summary": "Get Organization Usage",
|
||||
"description": "Get usage for a project",
|
||||
"description": "Get usage for a specific organization.",
|
||||
"operationId": "get_organization_usage_api_v1_organizations__organization_id__usage_get",
|
||||
"security": [
|
||||
{
|
||||
@@ -2535,15 +2535,8 @@
|
||||
"in": "path",
|
||||
"required": true,
|
||||
"schema": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string",
|
||||
"format": "uuid"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"type": "string",
|
||||
"format": "uuid",
|
||||
"title": "Organization Id"
|
||||
}
|
||||
},
|
||||
@@ -11650,7 +11643,7 @@
|
||||
},
|
||||
"/api/v1/projects/{project_id}/agents": {
|
||||
"get": {
|
||||
"tags": ["Llama Apps"],
|
||||
"tags": ["Agent Deployments"],
|
||||
"summary": "List Deployments",
|
||||
"description": "List all deployments for a project.",
|
||||
"operationId": "list_deployments_api_v1_projects__project_id__agents_get",
|
||||
@@ -11716,7 +11709,7 @@
|
||||
},
|
||||
"/api/v1/projects/{project_id}/agents:sync": {
|
||||
"post": {
|
||||
"tags": ["Llama Apps"],
|
||||
"tags": ["Agent Deployments"],
|
||||
"summary": "Sync Deployments",
|
||||
"description": "Sync deployments for a project.",
|
||||
"operationId": "sync_deployments_api_v1_projects__project_id__agents_sync_post",
|
||||
@@ -11780,12 +11773,12 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"/api/v1/billing/checkout-session": {
|
||||
"/api/v1/classifier/classify": {
|
||||
"post": {
|
||||
"tags": ["Billing"],
|
||||
"summary": "Create Checkout Session",
|
||||
"description": "Create a new checkout session.",
|
||||
"operationId": "create_checkout_session_api_v1_billing_checkout_session_post",
|
||||
"tags": ["Classifier", "Beta", "Classifier"],
|
||||
"summary": "Classify Documents",
|
||||
"description": "**[BETA]** Classify documents based on provided rules - simplified classification system.\n\n**This is a Beta feature** - API may change based on user feedback.\n\nThis endpoint supports:\n- Classifying new uploaded files\n- Classifying existing files by ID\n- Both new files and existing file IDs in one request\n\n## v0 Features:\n- **Simplified Rules**: Only `type` and `description` fields needed\n- **Matching Threshold**: Confidence-based classification with configurable threshold\n- **Smart Classification**: Filename heuristics + LLM content analysis\n- **Document Type Filtering**: Automatically filters out non-document file types\n- **Fast Processing**: Uses LlamaParse fast mode + GPT-4.1-nano\n- **Optimized Performance**: Parses each file only once for all rules\n\n## Simplified Scoring Logic:\n1. **Evaluate All Rules**: Compare document against all classification rules\n2. **Best Match Selection**: Return the highest scoring rule above matching_threshold\n3. **Unknown Classification**: Return as \"unknown\" if no rules score above threshold\n\nThis ensures optimal classification by:\n- Finding the best possible match among all rules\n- Avoiding false positives with confidence thresholds\n- Maximizing performance with single-pass file parsing\n\n## Rule Format:\n```json\n[\n {\n \"type\": \"invoice\",\n \"description\": \"contains invoice number, line items, and total amount\"\n },\n {\n \"type\": \"receipt\",\n \"description\": \"purchase receipt with transaction details and payment info\"\n }\n]\n```\n\n## Classification Process:\n1. **Metadata Heuristics** (configurable via API):\n - **Document Type Filter**: Only process document file types (PDF, DOC, DOCX, RTF, TXT, ODT, Pages, HTML, XML, Markdown)\n - **Filename Heuristics**: Check if rule type appears in filename\n - **Content Analysis**: Parse document content once and use LLM for semantic matching against all rules\n2. **Result**: Returns type, confidence score, and matched rule information\n\n## API Parameters:\n- `matching_threshold` (0.1-0.99, default: 0.6): Minimum confidence threshold for acceptable matches\n- `enable_metadata_heuristic` (boolean, default: true): Enable metadata-based features\n\n## Supported Document Types:\n**Text Documents**: pdf, doc, docx, rtf, txt, odt, pages\n**Web Documents**: html, htm, xml\n**Markup**: md, markdown\n\n## Limits (Beta):\n- Maximum 100 files per request\n- Maximum 10 rules per request\n- Rule descriptions: 10-500 characters\n- Document types: 1-50 characters (alphanumeric, hyphens, underscores)\n\n**Beta Notice**: This API is subject to change. Please provide feedback!",
|
||||
"operationId": "classify_documents_api_v1_classifier_classify_post",
|
||||
"security": [
|
||||
{
|
||||
"HTTPBearer": []
|
||||
@@ -11795,6 +11788,23 @@
|
||||
}
|
||||
],
|
||||
"parameters": [
|
||||
{
|
||||
"name": "project_id",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"schema": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string",
|
||||
"format": "uuid"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Project Id"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "organization_id",
|
||||
"in": "query",
|
||||
@@ -11832,9 +11842,9 @@
|
||||
"requestBody": {
|
||||
"required": true,
|
||||
"content": {
|
||||
"application/json": {
|
||||
"multipart/form-data": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/CheckoutSessionCreatePayload"
|
||||
"$ref": "#/components/schemas/Body_classify_documents_api_v1_classifier_classify_post"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -11845,8 +11855,7 @@
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"type": "string",
|
||||
"title": "Response Create Checkout Session Api V1 Billing Checkout Session Post"
|
||||
"$ref": "#/components/schemas/ClassifyResponse"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -11948,55 +11957,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"/api/v1/billing/webhook": {
|
||||
"post": {
|
||||
"tags": ["Billing"],
|
||||
"summary": "Stripe Webhook",
|
||||
"description": "Stripe webhook endpoint.",
|
||||
"operationId": "stripe_webhook_api_v1_billing_webhook_post",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "stripe-signature",
|
||||
"in": "header",
|
||||
"required": false,
|
||||
"schema": {
|
||||
"type": "string",
|
||||
"title": "Stripe-Signature"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Successful Response",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"type": "object",
|
||||
"additionalProperties": {
|
||||
"const": "success",
|
||||
"type": "string"
|
||||
},
|
||||
"propertyNames": {
|
||||
"const": "status"
|
||||
},
|
||||
"title": "Response Stripe Webhook Api V1 Billing Webhook Post"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"422": {
|
||||
"description": "Validation Error",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/HTTPValidationError"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"/api/v1/billing/downgrade-plan": {
|
||||
"post": {
|
||||
"tags": ["Billing"],
|
||||
@@ -12165,64 +12125,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"/api/v1/billing/metronome-webhook": {
|
||||
"post": {
|
||||
"tags": ["Billing"],
|
||||
"summary": "Metronome Webhook",
|
||||
"description": "Metronome webhook endpoint.",
|
||||
"operationId": "metronome_webhook_api_v1_billing_metronome_webhook_post",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "Metronome-Webhook-Signature",
|
||||
"in": "header",
|
||||
"required": false,
|
||||
"schema": {
|
||||
"type": "string",
|
||||
"title": "Metronome-Webhook-Signature"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Date",
|
||||
"in": "header",
|
||||
"required": false,
|
||||
"schema": {
|
||||
"type": "string",
|
||||
"title": "Date"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Successful Response",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"type": "object",
|
||||
"additionalProperties": {
|
||||
"const": "success",
|
||||
"type": "string"
|
||||
},
|
||||
"propertyNames": {
|
||||
"const": "status"
|
||||
},
|
||||
"title": "Response Metronome Webhook Api V1 Billing Metronome Webhook Post"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"422": {
|
||||
"description": "Validation Error",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/HTTPValidationError"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"/api/v1/billing/metronome/dashboard": {
|
||||
"get": {
|
||||
"tags": ["Billing"],
|
||||
@@ -15768,12 +15670,12 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"/api/v1/beta/agent-data/": {
|
||||
"/api/v1/beta/agent-data": {
|
||||
"post": {
|
||||
"tags": ["Beta", "Agent Data"],
|
||||
"summary": "Create Agent Data",
|
||||
"description": "Create new agent data.",
|
||||
"operationId": "create_agent_data_api_v1_beta_agent_data__post",
|
||||
"operationId": "create_agent_data_api_v1_beta_agent_data_post",
|
||||
"security": [
|
||||
{
|
||||
"HTTPBearer": []
|
||||
@@ -18883,6 +18785,73 @@
|
||||
"required": ["start_date", "end_date"],
|
||||
"title": "BillingPeriod"
|
||||
},
|
||||
"Body_classify_documents_api_v1_classifier_classify_post": {
|
||||
"properties": {
|
||||
"rules_json": {
|
||||
"type": "string",
|
||||
"title": "Rules Json",
|
||||
"description": "JSON string containing classifier rules"
|
||||
},
|
||||
"files": {
|
||||
"anyOf": [
|
||||
{
|
||||
"items": {
|
||||
"type": "string",
|
||||
"format": "binary"
|
||||
},
|
||||
"type": "array"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Files"
|
||||
},
|
||||
"file_ids": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "File Ids",
|
||||
"description": "Comma-separated list of existing file IDs"
|
||||
},
|
||||
"matching_threshold": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "number",
|
||||
"maximum": 0.99,
|
||||
"minimum": 0.1
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Matching Threshold",
|
||||
"description": "Minimum confidence threshold for acceptable matches (0.1-0.99, default: 0.6)",
|
||||
"default": 0.6
|
||||
},
|
||||
"enable_metadata_heuristic": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "boolean"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Enable Metadata Heuristic",
|
||||
"description": "Enable metadata-based features (document filtering + content classification, default: true)",
|
||||
"default": true
|
||||
}
|
||||
},
|
||||
"type": "object",
|
||||
"required": ["rules_json"],
|
||||
"title": "Body_classify_documents_api_v1_classifier_classify_post"
|
||||
},
|
||||
"Body_create_report_api_v1_reports__post": {
|
||||
"properties": {
|
||||
"name": {
|
||||
@@ -19376,6 +19345,11 @@
|
||||
],
|
||||
"title": "Max Pages"
|
||||
},
|
||||
"merge_tables_across_pages_in_markdown": {
|
||||
"type": "boolean",
|
||||
"title": "Merge Tables Across Pages In Markdown",
|
||||
"default": false
|
||||
},
|
||||
"outlined_table_extraction": {
|
||||
"type": "boolean",
|
||||
"title": "Outlined Table Extraction",
|
||||
@@ -19857,6 +19831,11 @@
|
||||
],
|
||||
"title": "Max Pages"
|
||||
},
|
||||
"merge_tables_across_pages_in_markdown": {
|
||||
"type": "boolean",
|
||||
"title": "Merge Tables Across Pages In Markdown",
|
||||
"default": false
|
||||
},
|
||||
"outlined_table_extraction": {
|
||||
"type": "boolean",
|
||||
"title": "Outlined Table Extraction",
|
||||
@@ -20430,30 +20409,101 @@
|
||||
"type": "object",
|
||||
"title": "ChatInputParams"
|
||||
},
|
||||
"CheckoutSessionCreatePayload": {
|
||||
"properties": {
|
||||
"success_url": {
|
||||
"type": "string",
|
||||
"minLength": 1,
|
||||
"format": "uri",
|
||||
"title": "Success Url"
|
||||
},
|
||||
"cancel_url": {
|
||||
"type": "string",
|
||||
"minLength": 1,
|
||||
"format": "uri",
|
||||
"title": "Cancel Url"
|
||||
}
|
||||
},
|
||||
"type": "object",
|
||||
"required": ["success_url", "cancel_url"],
|
||||
"title": "CheckoutSessionCreatePayload"
|
||||
},
|
||||
"ChunkMode": {
|
||||
"type": "string",
|
||||
"enum": ["PAGE", "DOCUMENT", "SECTION", "GROUPED_PAGES"],
|
||||
"title": "ChunkMode"
|
||||
},
|
||||
"ClassificationResult": {
|
||||
"properties": {
|
||||
"file_id": {
|
||||
"type": "string",
|
||||
"format": "uuid",
|
||||
"title": "File Id",
|
||||
"description": "The ID of the classified file"
|
||||
},
|
||||
"type": {
|
||||
"type": "string",
|
||||
"title": "Type",
|
||||
"description": "The assigned document type ('unknown' if no rules matched)",
|
||||
"examples": ["invoice", "receipt", "contract", "unknown"]
|
||||
},
|
||||
"confidence": {
|
||||
"type": "number",
|
||||
"maximum": 1.0,
|
||||
"minimum": 0.0,
|
||||
"title": "Confidence",
|
||||
"description": "Confidence score of the classification (0.0-1.0)"
|
||||
},
|
||||
"matched_rule": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Matched Rule",
|
||||
"description": "Description of the rule that matched, or method used (e.g., 'auto: filename contains invoice')",
|
||||
"examples": [
|
||||
"contains invoice number, line items, and total",
|
||||
"auto: filename contains 'invoice'",
|
||||
null
|
||||
]
|
||||
}
|
||||
},
|
||||
"type": "object",
|
||||
"required": ["file_id", "type", "confidence", "matched_rule"],
|
||||
"title": "ClassificationResult",
|
||||
"description": "Result of classifying a single file.\n\nContains the classification outcome with confidence score and matched rule info."
|
||||
},
|
||||
"ClassifyResponse": {
|
||||
"properties": {
|
||||
"items": {
|
||||
"items": {
|
||||
"$ref": "#/components/schemas/ClassificationResult"
|
||||
},
|
||||
"type": "array",
|
||||
"title": "Items",
|
||||
"description": "The list of items."
|
||||
},
|
||||
"next_page_token": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Next Page Token",
|
||||
"description": "A token, which can be sent as page_token to retrieve the next page. If this field is omitted, there are no subsequent pages."
|
||||
},
|
||||
"total_size": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "integer"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Total Size",
|
||||
"description": "The total number of items available. This is only populated when specifically requested. The value may be an estimate and can be used for display purposes only."
|
||||
},
|
||||
"unknown_count": {
|
||||
"type": "integer",
|
||||
"minimum": 0.0,
|
||||
"title": "Unknown Count",
|
||||
"description": "Number of files that couldn't be classified"
|
||||
}
|
||||
},
|
||||
"type": "object",
|
||||
"required": ["items", "unknown_count"],
|
||||
"title": "ClassifyResponse",
|
||||
"description": "Response model for the classify endpoint following AIP-132 pagination standard.\n\nContains classification results with pagination support and summary statistics."
|
||||
},
|
||||
"CloudAzStorageBlobDataSource": {
|
||||
"properties": {
|
||||
"supports_access_control": {
|
||||
@@ -21941,6 +21991,7 @@
|
||||
},
|
||||
"query": {
|
||||
"type": "string",
|
||||
"minLength": 1,
|
||||
"title": "Query",
|
||||
"description": "The query to retrieve against."
|
||||
}
|
||||
@@ -22457,14 +22508,12 @@
|
||||
"version_metadata": {
|
||||
"anyOf": [
|
||||
{
|
||||
"additionalProperties": true,
|
||||
"type": "object"
|
||||
"$ref": "#/components/schemas/DataSourceReaderVersionMetadata"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Version Metadata",
|
||||
"description": "Version metadata for the data source"
|
||||
},
|
||||
"project_id": {
|
||||
@@ -22570,6 +22619,24 @@
|
||||
"title": "DataSourceCreate",
|
||||
"description": "Schema for creating a data source."
|
||||
},
|
||||
"DataSourceReaderVersionMetadata": {
|
||||
"properties": {
|
||||
"reader_version": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Reader Version",
|
||||
"description": "The version of the reader to use for this data source."
|
||||
}
|
||||
},
|
||||
"type": "object",
|
||||
"title": "DataSourceReaderVersionMetadata"
|
||||
},
|
||||
"DataSourceUpdate": {
|
||||
"properties": {
|
||||
"name": {
|
||||
@@ -22841,6 +22908,7 @@
|
||||
},
|
||||
"query": {
|
||||
"type": "string",
|
||||
"minLength": 1,
|
||||
"title": "Query",
|
||||
"description": "The query to retrieve against."
|
||||
},
|
||||
@@ -23799,7 +23867,7 @@
|
||||
},
|
||||
"ExtractMode": {
|
||||
"type": "string",
|
||||
"enum": ["FAST", "BALANCED", "PREMIUM", "MULTIMODAL", "ACCURATE"],
|
||||
"enum": ["FAST", "BALANCED", "PREMIUM", "MULTIMODAL"],
|
||||
"title": "ExtractMode"
|
||||
},
|
||||
"ExtractModels": {
|
||||
@@ -26210,6 +26278,19 @@
|
||||
"description": "Whether to try to extract outlined tables",
|
||||
"default": false
|
||||
},
|
||||
"mergeTablesAcrossPagesInMarkdown": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "boolean"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Mergetablesacrosspagesinmarkdown",
|
||||
"description": "Whether to merge tables across pages in markdown",
|
||||
"default": false
|
||||
},
|
||||
"saveImages": {
|
||||
"anyOf": [
|
||||
{
|
||||
@@ -27070,6 +27151,7 @@
|
||||
"disable_image_extraction": false,
|
||||
"invalidate_cache": false,
|
||||
"outlined_table_extraction": false,
|
||||
"merge_tables_across_pages_in_markdown": false,
|
||||
"output_pdf_of_document": false,
|
||||
"do_not_cache": false,
|
||||
"fast_mode": false,
|
||||
@@ -27246,6 +27328,18 @@
|
||||
"title": "Outlined Table Extraction",
|
||||
"default": false
|
||||
},
|
||||
"merge_tables_across_pages_in_markdown": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "boolean"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Merge Tables Across Pages In Markdown",
|
||||
"default": false
|
||||
},
|
||||
"output_pdf_of_document": {
|
||||
"anyOf": [
|
||||
{
|
||||
@@ -29406,6 +29500,18 @@
|
||||
"title": "Outlined Table Extraction",
|
||||
"default": false
|
||||
},
|
||||
"merge_tables_across_pages_in_markdown": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "boolean"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Merge Tables Across Pages In Markdown",
|
||||
"default": false
|
||||
},
|
||||
"output_pdf_of_document": {
|
||||
"anyOf": [
|
||||
{
|
||||
@@ -31334,14 +31440,12 @@
|
||||
"version_metadata": {
|
||||
"anyOf": [
|
||||
{
|
||||
"additionalProperties": true,
|
||||
"type": "object"
|
||||
"$ref": "#/components/schemas/DataSourceReaderVersionMetadata"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Version Metadata",
|
||||
"description": "Version metadata for the data source"
|
||||
},
|
||||
"project_id": {
|
||||
@@ -32129,12 +32233,6 @@
|
||||
"title": "Data Source Project File Changed",
|
||||
"description": "Whether the data source project file has changed",
|
||||
"default": false
|
||||
},
|
||||
"should_migrate_pipeline_file_to_external_file_id": {
|
||||
"type": "boolean",
|
||||
"title": "Should Migrate Pipeline File To External File Id",
|
||||
"description": "Whether to migrate the pipeline file to the external file id",
|
||||
"default": false
|
||||
}
|
||||
},
|
||||
"type": "object",
|
||||
@@ -34239,19 +34337,6 @@
|
||||
"title": "Name",
|
||||
"description": "A name for the role."
|
||||
},
|
||||
"organization_id": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string",
|
||||
"format": "uuid"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "Organization Id",
|
||||
"description": "The organization's ID."
|
||||
},
|
||||
"permissions": {
|
||||
"items": {
|
||||
"$ref": "#/components/schemas/Permission"
|
||||
@@ -34262,7 +34347,7 @@
|
||||
}
|
||||
},
|
||||
"type": "object",
|
||||
"required": ["id", "name", "organization_id", "permissions"],
|
||||
"required": ["id", "name", "permissions"],
|
||||
"title": "Role",
|
||||
"description": "Schema for a role."
|
||||
},
|
||||
@@ -35134,19 +35219,13 @@
|
||||
"title": "Project Ids",
|
||||
"description": "The project ID scope."
|
||||
},
|
||||
"role_id": {
|
||||
"type": "string",
|
||||
"format": "uuid",
|
||||
"title": "Role Id",
|
||||
"description": "The role's ID."
|
||||
},
|
||||
"role": {
|
||||
"$ref": "#/components/schemas/Role",
|
||||
"description": "The role."
|
||||
}
|
||||
},
|
||||
"type": "object",
|
||||
"required": ["id", "user_id", "organization_id", "role_id", "role"],
|
||||
"required": ["id", "user_id", "organization_id", "role"],
|
||||
"title": "UserOrganizationRole",
|
||||
"description": "Schema for a user's role in an organization."
|
||||
},
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@llamaindex/cloud",
|
||||
"version": "4.0.18",
|
||||
"version": "4.0.24",
|
||||
"type": "module",
|
||||
"license": "MIT",
|
||||
"scripts": {
|
||||
@@ -11,10 +11,23 @@
|
||||
"files": [
|
||||
"openapi.json",
|
||||
"./api",
|
||||
"./reader"
|
||||
"./reader",
|
||||
"./parse",
|
||||
"./beta/agent"
|
||||
],
|
||||
"exports": {
|
||||
"./openapi.json": "./openapi.json",
|
||||
"./beta/agent": {
|
||||
"require": {
|
||||
"types": "./beta/agent/dist/index.d.cts",
|
||||
"default": "./beta/agent/dist/index.cjs"
|
||||
},
|
||||
"import": {
|
||||
"types": "./beta/agent/dist/index.d.ts",
|
||||
"default": "./beta/agent/dist/index.js"
|
||||
},
|
||||
"default": "./beta/agent/dist/index.js"
|
||||
},
|
||||
"./api": {
|
||||
"require": {
|
||||
"types": "./api/dist/index.d.cts",
|
||||
@@ -79,6 +92,6 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"p-retry": "^6.2.1",
|
||||
"zod": "^3.25.67"
|
||||
"zod": "^3.25.76"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,314 @@
|
||||
import { createClient, createConfig } from "@hey-api/client-fetch";
|
||||
import { getEnv } from "@llamaindex/env";
|
||||
import {
|
||||
aggregateAgentDataApiV1BetaAgentDataAggregatePost,
|
||||
createAgentDataApiV1BetaAgentDataPost,
|
||||
deleteAgentDataApiV1BetaAgentDataItemIdDelete,
|
||||
getAgentDataApiV1BetaAgentDataItemIdGet,
|
||||
searchAgentDataApiV1BetaAgentDataSearchPost,
|
||||
updateAgentDataApiV1BetaAgentDataItemIdPut,
|
||||
type AgentData,
|
||||
type AggregateGroup,
|
||||
} from "../../client";
|
||||
import type {
|
||||
AggregateAgentDataOptions,
|
||||
SearchAgentDataOptions,
|
||||
TypedAgentData,
|
||||
TypedAgentDataItems,
|
||||
TypedAggregateGroup,
|
||||
TypedAggregateGroupItems,
|
||||
} from "./types";
|
||||
|
||||
/**
|
||||
* Async client for agent data operations
|
||||
*/
|
||||
export class AgentClient<T = unknown> {
|
||||
private client: ReturnType<typeof createClient>;
|
||||
private baseUrl: string;
|
||||
private headers: Record<string, string>;
|
||||
private collection: string;
|
||||
private agentUrlId: string;
|
||||
|
||||
constructor({
|
||||
apiKey = getEnv("LLAMA_CLOUD_API_KEY"),
|
||||
baseUrl = "https://api.cloud.llamaindex.ai/",
|
||||
collection = "default",
|
||||
agentUrlId = "default",
|
||||
}: {
|
||||
apiKey?: string;
|
||||
baseUrl?: string;
|
||||
collection?: string;
|
||||
agentUrlId?: string;
|
||||
}) {
|
||||
this.baseUrl = baseUrl;
|
||||
|
||||
this.headers = {
|
||||
"X-SDK-Name": "llamaindex-ts",
|
||||
...(apiKey && { Authorization: `Bearer ${apiKey}` }),
|
||||
};
|
||||
|
||||
this.client = createClient(
|
||||
createConfig({
|
||||
baseUrl: this.baseUrl,
|
||||
headers: this.headers,
|
||||
}),
|
||||
);
|
||||
|
||||
this.collection = collection;
|
||||
this.agentUrlId = agentUrlId;
|
||||
}
|
||||
|
||||
/**
|
||||
* Create new agent data
|
||||
*/
|
||||
async createItem(data: T): Promise<TypedAgentData<T>> {
|
||||
const response = await createAgentDataApiV1BetaAgentDataPost({
|
||||
throwOnError: true,
|
||||
body: {
|
||||
agent_slug: this.agentUrlId,
|
||||
collection: this.collection,
|
||||
data: data as Record<string, unknown>,
|
||||
},
|
||||
client: this.client,
|
||||
});
|
||||
|
||||
return this.transformResponse(response.data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get agent data by ID
|
||||
*/
|
||||
async getItem(id: string): Promise<TypedAgentData<T> | null> {
|
||||
try {
|
||||
const response = await getAgentDataApiV1BetaAgentDataItemIdGet({
|
||||
throwOnError: true,
|
||||
path: { item_id: id },
|
||||
client: this.client,
|
||||
});
|
||||
|
||||
return this.transformResponse(response.data);
|
||||
} catch (error) {
|
||||
if (
|
||||
error instanceof Error &&
|
||||
"response" in error &&
|
||||
(error as { response?: { status?: number } }).response?.status === 404
|
||||
) {
|
||||
return null;
|
||||
}
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Update agent data
|
||||
*/
|
||||
async updateItem(id: string, data: T): Promise<TypedAgentData<T>> {
|
||||
const response = await updateAgentDataApiV1BetaAgentDataItemIdPut({
|
||||
throwOnError: true,
|
||||
path: { item_id: id },
|
||||
body: {
|
||||
data: data as Record<string, unknown>,
|
||||
},
|
||||
client: this.client,
|
||||
});
|
||||
|
||||
return this.transformResponse(response.data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete agent data
|
||||
*/
|
||||
async deleteItem(id: string): Promise<void> {
|
||||
await deleteAgentDataApiV1BetaAgentDataItemIdDelete({
|
||||
throwOnError: true,
|
||||
path: { item_id: id },
|
||||
client: this.client,
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* List agent data
|
||||
*/
|
||||
async search(
|
||||
options: SearchAgentDataOptions,
|
||||
): Promise<TypedAgentDataItems<T>> {
|
||||
const response = await searchAgentDataApiV1BetaAgentDataSearchPost({
|
||||
throwOnError: true,
|
||||
body: {
|
||||
agent_slug: this.agentUrlId,
|
||||
...(this.collection !== undefined && {
|
||||
collection: this.collection,
|
||||
}),
|
||||
...(options.filter !== undefined && { filter: options.filter }),
|
||||
...(options.orderBy !== undefined && { order_by: options.orderBy }),
|
||||
...(options.pageSize !== undefined && { page_size: options.pageSize }),
|
||||
...(options.offset !== undefined && { offset: options.offset }),
|
||||
...(options.includeTotal !== undefined && {
|
||||
include_total: options.includeTotal,
|
||||
}),
|
||||
},
|
||||
client: this.client,
|
||||
});
|
||||
|
||||
const result: TypedAgentDataItems<T> = {
|
||||
items: response.data.items.map((item: AgentData) =>
|
||||
this.transformResponse(item),
|
||||
),
|
||||
};
|
||||
|
||||
if (
|
||||
response.data.total_size !== null &&
|
||||
response.data.total_size !== undefined
|
||||
) {
|
||||
result.totalSize = response.data.total_size;
|
||||
}
|
||||
|
||||
if (
|
||||
response.data.next_page_token !== null &&
|
||||
response.data.next_page_token !== undefined
|
||||
) {
|
||||
result.nextPageToken = response.data.next_page_token;
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Aggregate agent data into groups
|
||||
*/
|
||||
async aggregate(
|
||||
options: AggregateAgentDataOptions,
|
||||
): Promise<TypedAggregateGroupItems<T>> {
|
||||
const response = await aggregateAgentDataApiV1BetaAgentDataAggregatePost({
|
||||
throwOnError: true,
|
||||
body: {
|
||||
agent_slug: this.agentUrlId,
|
||||
...(this.collection !== undefined && {
|
||||
collection: this.collection,
|
||||
}),
|
||||
...(options.filter !== undefined && { filter: options.filter }),
|
||||
...(options.groupBy !== undefined && { group_by: options.groupBy }),
|
||||
...(options.count !== undefined && { count: options.count }),
|
||||
...(options.first !== undefined && { first: options.first }),
|
||||
...(options.orderBy !== undefined && { order_by: options.orderBy }),
|
||||
...(options.offset !== undefined && { offset: options.offset }),
|
||||
...(options.pageSize !== undefined && { page_size: options.pageSize }),
|
||||
},
|
||||
client: this.client,
|
||||
});
|
||||
|
||||
const result: TypedAggregateGroupItems<T> = {
|
||||
items: response.data.items.map((item) =>
|
||||
this.transformAggregateResponse(item),
|
||||
),
|
||||
};
|
||||
|
||||
if (
|
||||
response.data.total_size !== null &&
|
||||
response.data.total_size !== undefined
|
||||
) {
|
||||
result.totalSize = response.data.total_size;
|
||||
}
|
||||
|
||||
if (
|
||||
response.data.next_page_token !== null &&
|
||||
response.data.next_page_token !== undefined
|
||||
) {
|
||||
result.nextPageToken = response.data.next_page_token;
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Transform API response to typed data
|
||||
*/
|
||||
private transformResponse(data: AgentData): TypedAgentData<T> {
|
||||
const result: TypedAgentData<T> = {
|
||||
id: data.id!,
|
||||
agentUrlId: data.agent_slug,
|
||||
data: data.data as T,
|
||||
createdAt: new Date(data.created_at!),
|
||||
updatedAt: new Date(data.updated_at!),
|
||||
};
|
||||
|
||||
if (data.collection !== undefined) {
|
||||
result.collection = data.collection;
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Transform API aggregate response to typed data
|
||||
*/
|
||||
private transformAggregateResponse(
|
||||
data: AggregateGroup,
|
||||
): TypedAggregateGroup<T> {
|
||||
const result: TypedAggregateGroup<T> = {
|
||||
groupKey: data.group_key,
|
||||
};
|
||||
|
||||
if (data.count !== null && data.count !== undefined) {
|
||||
result.count = data.count;
|
||||
}
|
||||
|
||||
if (data.first_item !== null && data.first_item !== undefined) {
|
||||
result.firstItem = data.first_item as T;
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
export interface AgentDataClientOptions<T = unknown> {
|
||||
/** API key for the client */
|
||||
apiKey?: string;
|
||||
/** Base URL for the client */
|
||||
/** Base URL of the llama cloud api */
|
||||
baseUrl?: string;
|
||||
/** If running in an agent runtime, optionally provide the window url to infer the agent url id */
|
||||
windowUrl?: string;
|
||||
/** Agent URL ID for the client, if not provided, it will be inferred from the window url, or fall back to "default" */
|
||||
agentUrlId?: string;
|
||||
/** Collection name for the client, defaults to "default" */
|
||||
collection?: string;
|
||||
}
|
||||
/**
|
||||
* Create a new AsyncAgentDataClient instance
|
||||
* @param options - The options for the client
|
||||
* @returns A new AgentClient instance
|
||||
*/
|
||||
export function createAgentDataClient<T = unknown>({
|
||||
apiKey,
|
||||
baseUrl,
|
||||
windowUrl,
|
||||
agentUrlId,
|
||||
collection = "default",
|
||||
}: {
|
||||
apiKey?: string;
|
||||
baseUrl?: string;
|
||||
windowUrl?: string;
|
||||
agentUrlId?: string;
|
||||
collection?: string;
|
||||
} = {}): AgentClient<T> {
|
||||
if (windowUrl && !agentUrlId) {
|
||||
try {
|
||||
const path = new URL(windowUrl).pathname;
|
||||
// /deployments/<agent-url-id>/ui/ -> ["", "deployments", "<agent-url-id>", "ui"]
|
||||
agentUrlId = path.split("/")[2];
|
||||
} catch (error) {
|
||||
console.warn(
|
||||
"Failed to infer agent url id from window url, falling back to default",
|
||||
error,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
return new AgentClient({
|
||||
...(apiKey && { apiKey }),
|
||||
...(baseUrl && { baseUrl }),
|
||||
...(agentUrlId && { agentUrlId }),
|
||||
collection,
|
||||
});
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
export { AgentClient, createAgentDataClient } from "./client";
|
||||
|
||||
export type {
|
||||
AggregateAgentDataOptions,
|
||||
ComparisonOperator,
|
||||
ExtractedData,
|
||||
FilterOperation,
|
||||
SearchAgentDataOptions,
|
||||
StatusType,
|
||||
TypedAgentData,
|
||||
TypedAgentDataItems,
|
||||
TypedAggregateGroup,
|
||||
TypedAggregateGroupItems,
|
||||
} from "./types";
|
||||
|
||||
export { StatusType as StatusTypeEnum } from "./types";
|
||||
@@ -0,0 +1,138 @@
|
||||
import type { FilterOperation as RawFilterOperation } from "../../client/types.gen";
|
||||
/**
|
||||
* Status types for agent data processing
|
||||
*/
|
||||
export const StatusType = {
|
||||
ERROR: "error",
|
||||
ACCEPTED: "accepted",
|
||||
REJECTED: "rejected",
|
||||
PENDING_REVIEW: "pending_review",
|
||||
} as const;
|
||||
|
||||
export type StatusType = (typeof StatusType)[keyof typeof StatusType];
|
||||
|
||||
export const ComparisonOperator = {
|
||||
GT: "gt",
|
||||
GTE: "gte",
|
||||
LT: "lt",
|
||||
LTE: "lte",
|
||||
EQ: "eq",
|
||||
INCLUDES: "includes",
|
||||
} as const;
|
||||
|
||||
export type ComparisonOperator =
|
||||
(typeof ComparisonOperator)[keyof typeof ComparisonOperator];
|
||||
|
||||
/**
|
||||
* Filter operation for searching/filtering agent data
|
||||
*/
|
||||
export type FilterOperation = RawFilterOperation;
|
||||
|
||||
/**
|
||||
* Base extracted data interface
|
||||
*/
|
||||
export interface ExtractedData<T = unknown> {
|
||||
/** The original data that was extracted from the document. For tracking changes. Should not be updated. */
|
||||
original_data: T;
|
||||
/** The latest state of the data. Will differ if data has been updated. */
|
||||
data?: T;
|
||||
/** The status of the extracted data. Prefer to use the StatusType values, but any string is allowed. */
|
||||
status: StatusType | string;
|
||||
/** Confidence scores, if any, for each primitive field in the original_data data. */
|
||||
confidence?: Record<string, unknown>;
|
||||
/** The ID of the file that was used to extract the data. */
|
||||
file_id?: string;
|
||||
/** The name of the file that was used to extract the data. */
|
||||
file_name?: string;
|
||||
/** The hash of the file that was used to extract the data. */
|
||||
file_hash?: string;
|
||||
/** Additional metadata about the extracted data, such as errors, tokens, etc. */
|
||||
metadata?: Record<string, unknown>;
|
||||
}
|
||||
|
||||
/**
|
||||
* TypedAgentData interface for typed agent data
|
||||
*/
|
||||
export interface TypedAgentData<T = unknown> {
|
||||
/** The unique ID of the agent data record. */
|
||||
id: string;
|
||||
/** The ID of the agent that created the data. */
|
||||
agentUrlId: string;
|
||||
/** The collection of the agent data. */
|
||||
collection?: string;
|
||||
/** The data of the agent data. Usually an ExtractedData<SomeOtherType> */
|
||||
data: T;
|
||||
/** The date and time the data was created. */
|
||||
createdAt: Date;
|
||||
/** The date and time the data was last updated. */
|
||||
updatedAt: Date;
|
||||
}
|
||||
|
||||
/**
|
||||
* Paginated response of typed agent data items
|
||||
*/
|
||||
export interface TypedAgentDataItems<T = unknown> {
|
||||
items: TypedAgentData<T>[];
|
||||
totalSize?: number;
|
||||
nextPageToken?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Options for listing agent data
|
||||
*/
|
||||
export interface SearchAgentDataOptions {
|
||||
/** Filter options for the list. */
|
||||
filter?: Record<string, FilterOperation>;
|
||||
/** Order by options for the list. */
|
||||
orderBy?: string;
|
||||
/** Page size for the list. */
|
||||
pageSize?: number;
|
||||
/** Offset for the list. */
|
||||
offset?: number;
|
||||
/**
|
||||
* Whether to include the total number of items in the response.
|
||||
* Should use only for first request to build total pagination, and not subsequent requests.
|
||||
*/
|
||||
includeTotal?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
* Options for aggregating agent data
|
||||
*/
|
||||
export interface AggregateAgentDataOptions {
|
||||
/** Filter options for the aggregation. */
|
||||
filter?: Record<string, FilterOperation>;
|
||||
/** Fields to group by. */
|
||||
groupBy?: string[];
|
||||
/** Whether to count the number of items in each group. */
|
||||
count?: boolean;
|
||||
/** Whether to return the first item in each group. */
|
||||
first?: boolean;
|
||||
/** Order by options for the aggregation. */
|
||||
orderBy?: string;
|
||||
/** Offset for the aggregation. */
|
||||
offset?: number;
|
||||
/** Page size for the aggregation. */
|
||||
pageSize?: number;
|
||||
}
|
||||
|
||||
/**
|
||||
* Single aggregation group result
|
||||
*/
|
||||
export interface TypedAggregateGroup<T = unknown> {
|
||||
/** The group key values */
|
||||
groupKey: Record<string, unknown>;
|
||||
/** Count of items in the group */
|
||||
count?: number;
|
||||
/** First item in the group */
|
||||
firstItem?: T;
|
||||
}
|
||||
|
||||
/**
|
||||
* Paginated response of aggregated agent data
|
||||
*/
|
||||
export interface TypedAggregateGroupItems<T = unknown> {
|
||||
items: TypedAggregateGroup<T>[];
|
||||
totalSize?: number;
|
||||
nextPageToken?: string;
|
||||
}
|
||||
@@ -179,6 +179,7 @@ export class LlamaParseReader extends FileReader {
|
||||
page_header_suffix?: string | undefined;
|
||||
page_footer_prefix?: string | undefined;
|
||||
page_footer_suffix?: string | undefined;
|
||||
merge_tables_across_pages_in_markdown?: boolean | undefined;
|
||||
|
||||
constructor(
|
||||
params: Partial<Omit<LlamaParseReader, "language" | "apiKey">> & {
|
||||
@@ -368,6 +369,8 @@ export class LlamaParseReader extends FileReader {
|
||||
page_header_suffix: this.page_header_suffix,
|
||||
page_footer_prefix: this.page_footer_prefix,
|
||||
page_footer_suffix: this.page_footer_suffix,
|
||||
merge_tables_across_pages_in_markdown:
|
||||
this.merge_tables_across_pages_in_markdown,
|
||||
} satisfies {
|
||||
[Key in keyof BodyUploadFileApiParsingUploadPost]-?:
|
||||
| BodyUploadFileApiParsingUploadPost[Key]
|
||||
|
||||
@@ -1,5 +1,18 @@
|
||||
# @llamaindex/core
|
||||
|
||||
## 0.6.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 7ad3411: feat: add llm.exec
|
||||
- 5da5b3c: add progress callback to embeddings
|
||||
|
||||
## 0.6.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 8eeac33: Fix createMemory factory when parsing options
|
||||
|
||||
## 0.6.13
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@llamaindex/core",
|
||||
"type": "module",
|
||||
"version": "0.6.13",
|
||||
"version": "0.6.15",
|
||||
"description": "LlamaIndex Core Module",
|
||||
"exports": {
|
||||
"./agent": {
|
||||
@@ -59,6 +59,17 @@
|
||||
},
|
||||
"default": "./llms/dist/index.js"
|
||||
},
|
||||
"./llms/mock": {
|
||||
"require": {
|
||||
"types": "./llms/mock/dist/index.d.cts",
|
||||
"default": "./llms/mock/dist/index.cjs"
|
||||
},
|
||||
"import": {
|
||||
"types": "./llms/mock/dist/index.d.ts",
|
||||
"default": "./llms/mock/dist/index.js"
|
||||
},
|
||||
"default": "./llms/mock/dist/index.js"
|
||||
},
|
||||
"./decorator": {
|
||||
"require": {
|
||||
"types": "./decorator/dist/index.d.cts",
|
||||
@@ -310,9 +321,9 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@llamaindex/env": "workspace:*",
|
||||
"@types/node": "^22.9.0",
|
||||
"@types/node": "^24.0.13",
|
||||
"magic-bytes.js": "^1.10.0",
|
||||
"zod": "^3.25.67",
|
||||
"zod": "^3.25.76",
|
||||
"zod-to-json-schema": "^3.24.6"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,6 +17,7 @@ export type EmbeddingInfo = {
|
||||
|
||||
export type BaseEmbeddingOptions = {
|
||||
logProgress?: boolean;
|
||||
progressCallback?: (current: number, total: number) => void;
|
||||
};
|
||||
|
||||
export abstract class BaseEmbedding extends TransformComponent<
|
||||
@@ -138,9 +139,11 @@ export async function batchEmbeddings<T>(
|
||||
const embeddings = await embedFunc(curBatch);
|
||||
|
||||
resultEmbeddings.push(...embeddings);
|
||||
|
||||
if (options?.progressCallback) {
|
||||
options?.progressCallback?.(i + 1, queue.length);
|
||||
}
|
||||
if (options?.logProgress) {
|
||||
console.log(`getting embedding progress: ${i} / ${queue.length}`);
|
||||
console.log(`getting embedding progress: ${i + 1} / ${queue.length}`);
|
||||
}
|
||||
|
||||
curBatch.length = 0;
|
||||
|
||||
@@ -1,15 +1,20 @@
|
||||
import { extractText } from "../utils/llms";
|
||||
import { streamConverter } from "../utils/stream";
|
||||
import { callTool, getToolCallsFromResponse } from "./tool-call";
|
||||
import type {
|
||||
ChatMessage,
|
||||
ChatResponse,
|
||||
ChatResponseChunk,
|
||||
CompletionResponse,
|
||||
ExecResponse,
|
||||
ExecStreamResponse,
|
||||
LLM,
|
||||
LLMChatParamsNonStreaming,
|
||||
LLMChatParamsStreaming,
|
||||
LLMCompletionParamsNonStreaming,
|
||||
LLMCompletionParamsStreaming,
|
||||
LLMMetadata,
|
||||
PartialToolCall,
|
||||
ToolCallLLMMessageOptions,
|
||||
} from "./type";
|
||||
|
||||
@@ -60,13 +65,180 @@ export abstract class BaseLLM<
|
||||
AdditionalChatOptions,
|
||||
AdditionalMessageOptions
|
||||
>,
|
||||
): Promise<AsyncIterable<ChatResponseChunk>>;
|
||||
): Promise<AsyncIterable<ChatResponseChunk<AdditionalMessageOptions>>>;
|
||||
abstract chat(
|
||||
params: LLMChatParamsNonStreaming<
|
||||
AdditionalChatOptions,
|
||||
AdditionalMessageOptions
|
||||
>,
|
||||
): Promise<ChatResponse<AdditionalMessageOptions>>;
|
||||
|
||||
exec(
|
||||
params: LLMChatParamsStreaming<
|
||||
AdditionalChatOptions,
|
||||
AdditionalMessageOptions
|
||||
>,
|
||||
): Promise<ExecStreamResponse<AdditionalMessageOptions>>;
|
||||
exec(
|
||||
params: LLMChatParamsNonStreaming<
|
||||
AdditionalChatOptions,
|
||||
AdditionalMessageOptions
|
||||
>,
|
||||
): Promise<ExecResponse<AdditionalMessageOptions>>;
|
||||
async exec(
|
||||
params:
|
||||
| LLMChatParamsStreaming<AdditionalChatOptions, AdditionalMessageOptions>
|
||||
| LLMChatParamsNonStreaming<
|
||||
AdditionalChatOptions,
|
||||
AdditionalMessageOptions
|
||||
>,
|
||||
): Promise<
|
||||
| ExecResponse<AdditionalMessageOptions>
|
||||
| ExecStreamResponse<AdditionalMessageOptions>
|
||||
> {
|
||||
if (params.stream) {
|
||||
return this.streamExec(params);
|
||||
}
|
||||
const newMessages: ChatMessage<AdditionalMessageOptions>[] = [];
|
||||
const response = await this.chat(params);
|
||||
newMessages.push(response.message);
|
||||
const toolCalls = getToolCallsFromResponse(response);
|
||||
if (params.tools && toolCalls.length > 0) {
|
||||
for (const toolCall of toolCalls) {
|
||||
const toolResultMessage = await callTool<AdditionalMessageOptions>(
|
||||
params.tools,
|
||||
toolCall,
|
||||
);
|
||||
if (toolResultMessage) {
|
||||
newMessages.push(toolResultMessage);
|
||||
}
|
||||
}
|
||||
}
|
||||
return {
|
||||
newMessages,
|
||||
toolCalls,
|
||||
};
|
||||
}
|
||||
|
||||
async streamExec(
|
||||
params: LLMChatParamsStreaming<
|
||||
AdditionalChatOptions,
|
||||
AdditionalMessageOptions
|
||||
>,
|
||||
): Promise<ExecStreamResponse<AdditionalMessageOptions>> {
|
||||
const responseStream = await this.chat(params);
|
||||
const iterator = responseStream[Symbol.asyncIterator]();
|
||||
const first = await iterator.next();
|
||||
|
||||
// Set firstChunk to null if empty
|
||||
const firstChunk = !first.done ? first.value : null;
|
||||
|
||||
const hasToolCallsInFirst =
|
||||
firstChunk?.options && "toolCall" in firstChunk.options;
|
||||
|
||||
if (!hasToolCallsInFirst) {
|
||||
let content = firstChunk?.delta ?? "";
|
||||
let finished = false;
|
||||
return {
|
||||
stream: (async function* () {
|
||||
if (firstChunk) {
|
||||
yield firstChunk;
|
||||
}
|
||||
for await (const chunk of {
|
||||
[Symbol.asyncIterator]: () => iterator,
|
||||
}) {
|
||||
content += chunk.delta;
|
||||
yield chunk;
|
||||
}
|
||||
finished = true;
|
||||
})(),
|
||||
toolCalls: [],
|
||||
newMessages() {
|
||||
if (!finished) {
|
||||
throw new Error(
|
||||
"New messages are not ready yet. Call newMessages() after the stream is done.",
|
||||
);
|
||||
}
|
||||
return content
|
||||
? [
|
||||
{
|
||||
role: "assistant",
|
||||
content,
|
||||
} as ChatMessage<AdditionalMessageOptions>,
|
||||
]
|
||||
: [];
|
||||
},
|
||||
};
|
||||
}
|
||||
// Helper function to process a chunk
|
||||
function processChunk(
|
||||
chunk: ChatResponseChunk,
|
||||
toolCallMap: Map<string, PartialToolCall>,
|
||||
): ChatResponseChunk | null {
|
||||
if (chunk.options && "toolCall" in chunk.options) {
|
||||
// update tool call map
|
||||
for (const toolCall of chunk.options.toolCall as PartialToolCall[]) {
|
||||
if (toolCall.id) {
|
||||
toolCallMap.set(toolCall.id, toolCall);
|
||||
}
|
||||
}
|
||||
// return the current full response with the tool calls
|
||||
const toolCalls = Array.from(toolCallMap.values());
|
||||
return {
|
||||
...chunk,
|
||||
options: {
|
||||
...chunk.options,
|
||||
toolCall: toolCalls,
|
||||
},
|
||||
};
|
||||
}
|
||||
return null;
|
||||
}
|
||||
// Collect for tool call
|
||||
let fullResponse: ChatResponseChunk | null = null;
|
||||
const toolCallMap = new Map<string, PartialToolCall>();
|
||||
// Process first chunk
|
||||
fullResponse = processChunk(firstChunk, toolCallMap);
|
||||
// Process remaining chunks
|
||||
while (true) {
|
||||
const next = await iterator.next();
|
||||
if (next.done) break;
|
||||
const chunk = next.value;
|
||||
const potentialFull = processChunk(chunk, toolCallMap);
|
||||
if (potentialFull) {
|
||||
fullResponse = potentialFull;
|
||||
}
|
||||
}
|
||||
if (params.tools && fullResponse) {
|
||||
const toolCalls = getToolCallsFromResponse(fullResponse);
|
||||
const messages: ChatMessage<AdditionalMessageOptions>[] = [];
|
||||
messages.push({
|
||||
role: "assistant",
|
||||
content: "",
|
||||
options: {
|
||||
toolCall: toolCalls,
|
||||
} as AdditionalMessageOptions,
|
||||
});
|
||||
for (const toolCall of toolCalls) {
|
||||
const toolResultMessage = await callTool<AdditionalMessageOptions>(
|
||||
params.tools,
|
||||
toolCall,
|
||||
);
|
||||
if (toolResultMessage) {
|
||||
messages.push(toolResultMessage);
|
||||
}
|
||||
}
|
||||
return {
|
||||
stream: (async function* () {})(),
|
||||
newMessages() {
|
||||
return messages;
|
||||
},
|
||||
toolCalls,
|
||||
};
|
||||
} else {
|
||||
throw new Error("Cannot get tool calls from response");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export abstract class ToolCallLLM<
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
// TODO: move to a test package
|
||||
import { ToolCallLLM } from "../llms/base";
|
||||
import { ToolCallLLM } from "./base";
|
||||
import type {
|
||||
ChatResponse,
|
||||
ChatResponseChunk,
|
||||
@@ -9,7 +8,7 @@ import type {
|
||||
LLMCompletionParamsNonStreaming,
|
||||
LLMCompletionParamsStreaming,
|
||||
LLMMetadata,
|
||||
} from "../llms/type";
|
||||
} from "./type";
|
||||
|
||||
export class MockLLM extends ToolCallLLM {
|
||||
metadata: LLMMetadata;
|
||||
@@ -0,0 +1,61 @@
|
||||
import { stringifyJSONToMessageContent } from "../utils";
|
||||
import type {
|
||||
BaseTool,
|
||||
ChatMessage,
|
||||
ChatResponse,
|
||||
ChatResponseChunk,
|
||||
ToolCall,
|
||||
ToolCallLLMMessageOptions,
|
||||
} from "./type";
|
||||
|
||||
export const getToolCallsFromResponse = (
|
||||
response:
|
||||
| ChatResponse<ToolCallLLMMessageOptions>
|
||||
| ChatResponseChunk<ToolCallLLMMessageOptions>,
|
||||
): ToolCall[] => {
|
||||
let options;
|
||||
|
||||
if ("message" in response) {
|
||||
options = response.message.options;
|
||||
} else {
|
||||
options = response.options;
|
||||
}
|
||||
|
||||
if (options && "toolCall" in options) {
|
||||
return (options.toolCall as ToolCall[]).map((toolCall) => ({
|
||||
...toolCall,
|
||||
input:
|
||||
// XXX: this is a hack openai returns parsed object for streaming, but not for
|
||||
// non-streaming
|
||||
typeof toolCall.input === "string"
|
||||
? JSON.parse(toolCall.input)
|
||||
: toolCall.input,
|
||||
}));
|
||||
}
|
||||
return [];
|
||||
};
|
||||
|
||||
export const callTool = async <
|
||||
AdditionalMessageOptions extends object = object,
|
||||
>(
|
||||
tools: BaseTool[],
|
||||
toolCall: ToolCall,
|
||||
): Promise<ChatMessage<AdditionalMessageOptions> | null> => {
|
||||
const tool = tools?.find((t) => t.metadata.name === toolCall.name);
|
||||
// TODO: consider using BaseToolWithCall instead of BaseTool to avoid checking for tool.call
|
||||
if (tool && tool.call) {
|
||||
const result = await tool.call(toolCall.input);
|
||||
const toolResultMessage: ChatMessage<AdditionalMessageOptions> = {
|
||||
role: "user",
|
||||
content: stringifyJSONToMessageContent(result),
|
||||
options: {
|
||||
toolResult: {
|
||||
id: toolCall.id,
|
||||
result,
|
||||
},
|
||||
} as AdditionalMessageOptions,
|
||||
};
|
||||
return toolResultMessage;
|
||||
}
|
||||
return null;
|
||||
};
|
||||
@@ -95,6 +95,22 @@ export type ChatResponseChunk<
|
||||
options?: undefined | AdditionalMessageOptions;
|
||||
};
|
||||
|
||||
export interface ExecResponse<
|
||||
AdditionalMessageOptions extends object = object,
|
||||
> {
|
||||
newMessages: ChatMessage<AdditionalMessageOptions>[];
|
||||
toolCalls: ToolCall[];
|
||||
}
|
||||
|
||||
export interface ExecStreamResponse<
|
||||
AdditionalMessageOptions extends object = object,
|
||||
> {
|
||||
stream: AsyncIterable<ChatResponseChunk<AdditionalMessageOptions>>;
|
||||
// this is a function as while streaming, the assistant message is not ready yet - can be called after the stream is done
|
||||
newMessages(): ChatMessage<AdditionalMessageOptions>[];
|
||||
toolCalls: ToolCall[];
|
||||
}
|
||||
|
||||
export interface CompletionResponse {
|
||||
text: string;
|
||||
/**
|
||||
@@ -120,9 +136,9 @@ export interface LLMChatParamsBase<
|
||||
AdditionalMessageOptions extends object = object,
|
||||
> {
|
||||
messages: ChatMessage<AdditionalMessageOptions>[];
|
||||
additionalChatOptions?: AdditionalChatOptions;
|
||||
tools?: BaseTool[];
|
||||
responseFormat?: z.ZodType | object;
|
||||
additionalChatOptions?: AdditionalChatOptions | undefined;
|
||||
tools?: BaseTool[] | undefined;
|
||||
responseFormat?: z.ZodType | object | undefined;
|
||||
}
|
||||
|
||||
export interface LLMChatParamsStreaming<
|
||||
|
||||
@@ -79,7 +79,18 @@ export function createMemory<TMessageOptions extends object = object>(
|
||||
}
|
||||
}
|
||||
}
|
||||
return new Memory<Record<string, never>, TMessageOptions>(messages, options);
|
||||
|
||||
// Determine the correct options to pass to Memory
|
||||
const resolvedOptions: MemoryOptions<TMessageOptions> = Array.isArray(
|
||||
messagesOrOptions,
|
||||
)
|
||||
? options
|
||||
: (messagesOrOptions as MemoryOptions<TMessageOptions>);
|
||||
|
||||
return new Memory<Record<string, never>, TMessageOptions>(
|
||||
messages,
|
||||
resolvedOptions,
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -70,8 +70,6 @@ export {
|
||||
toToolDescriptions,
|
||||
} from "./llms";
|
||||
|
||||
export { MockLLM } from "./mock";
|
||||
|
||||
export * from "./encoding";
|
||||
export { objectEntries } from "./object-entries";
|
||||
export * from "./stream";
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { LLMAgent, validateAgentParams } from "@llamaindex/core/agent";
|
||||
import { MockLLM } from "@llamaindex/core/utils";
|
||||
import { MockLLM } from "@llamaindex/core/llms/mock";
|
||||
import { expect, test } from "vitest";
|
||||
import { ZodError } from "zod";
|
||||
|
||||
|
||||
@@ -1,4 +1,9 @@
|
||||
import { truncateMaxTokens } from "@llamaindex/core/embeddings";
|
||||
import {
|
||||
BaseEmbedding,
|
||||
batchEmbeddings,
|
||||
truncateMaxTokens,
|
||||
type BaseEmbeddingOptions,
|
||||
} from "@llamaindex/core/embeddings";
|
||||
import { Tokenizers, tokenizers } from "@llamaindex/env/tokenizers";
|
||||
import { describe, expect, test } from "vitest";
|
||||
|
||||
@@ -27,3 +32,77 @@ describe("truncateMaxTokens", () => {
|
||||
expect(t.includes("�")).toBe(false);
|
||||
});
|
||||
});
|
||||
|
||||
describe("BaseEmbedding progressCallback", () => {
|
||||
const mockEmbedFunc = async (text: string): Promise<number[]> => {
|
||||
return Array.from({ length: 10 }, () => Math.random());
|
||||
};
|
||||
const mockBatchEmbedFunc = async (
|
||||
texts: string[],
|
||||
): Promise<Array<number[]>> => {
|
||||
return await Promise.all(texts.map(mockEmbedFunc));
|
||||
};
|
||||
const mockProgressCallback = (current: number, total: number) => {
|
||||
console.log(`Progress: ${current}/${total}`);
|
||||
};
|
||||
const mockLogProgress = true;
|
||||
|
||||
const mockOptions = {
|
||||
logProgress: mockLogProgress,
|
||||
progressCallback: mockProgressCallback,
|
||||
};
|
||||
|
||||
class MockEmbedding extends BaseEmbedding {
|
||||
constructor(options: BaseEmbeddingOptions) {
|
||||
super();
|
||||
this.options = options;
|
||||
}
|
||||
|
||||
private options: BaseEmbeddingOptions;
|
||||
|
||||
async getTextEmbedding(text: string): Promise<number[]> {
|
||||
return await mockEmbedFunc(text);
|
||||
}
|
||||
|
||||
getTextEmbeddings = async (texts: string[]): Promise<Array<number[]>> => {
|
||||
return await mockBatchEmbedFunc(texts);
|
||||
};
|
||||
|
||||
async getTextEmbeddingsBatch(
|
||||
texts: string[],
|
||||
options?: BaseEmbeddingOptions,
|
||||
): Promise<Array<number[]>> {
|
||||
const mergedOptions = { ...this.options, ...options };
|
||||
|
||||
expect(mergedOptions.progressCallback).toBeDefined();
|
||||
|
||||
return await batchEmbeddings(
|
||||
texts,
|
||||
this.getTextEmbeddings,
|
||||
this.embedBatchSize,
|
||||
mergedOptions,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
test("should call progressCallback with correct values", async () => {
|
||||
// Import and use a real embedding class instead
|
||||
|
||||
const progressCalls: Array<{ current: number; total: number }> = [];
|
||||
const progressCallback = (current: number, total: number) => {
|
||||
progressCalls.push({ current, total });
|
||||
};
|
||||
const texts = ["text1", "text2", "text3"];
|
||||
const embedding = new MockEmbedding({ progressCallback: progressCallback });
|
||||
embedding.embedBatchSize = 1; // Set batch size to 1 for testing
|
||||
// so that progressCallback is called for each item
|
||||
// (otherwise, we'd only get a callback for 3/3, which is fine but less clear)
|
||||
await embedding.getTextEmbeddingsBatch(texts);
|
||||
|
||||
expect(progressCalls).toEqual([
|
||||
{ current: 1, total: 3 },
|
||||
{ current: 2, total: 3 },
|
||||
{ current: 3, total: 3 },
|
||||
]);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
import { MockLLM } from "@llamaindex/core/llms/mock";
|
||||
import { describe, expect, it } from "vitest";
|
||||
|
||||
// TODO: add tests for tool calls
|
||||
describe("BaseLLM exec", () => {
|
||||
it("should stream text response when no tool call is made", async () => {
|
||||
const responseMessage = "This is a response message while streaming";
|
||||
|
||||
const llm = new MockLLM({ responseMessage });
|
||||
|
||||
const { stream, newMessages, toolCalls } = await llm.exec({
|
||||
messages: [{ content: "Hi", role: "user" }],
|
||||
stream: true,
|
||||
});
|
||||
|
||||
expect(() => newMessages()).toThrowError();
|
||||
|
||||
const chunks = [];
|
||||
for await (const chunk of stream) {
|
||||
chunks.push(chunk);
|
||||
}
|
||||
|
||||
expect(chunks.map((c) => c.delta).join("")).toBe(responseMessage);
|
||||
expect(toolCalls).toEqual([]);
|
||||
expect(newMessages()).toEqual([
|
||||
{ content: responseMessage, role: "assistant" },
|
||||
]);
|
||||
});
|
||||
it("should return text response when no tool call is made", async () => {
|
||||
const responseMessage = "This is a response message";
|
||||
|
||||
const llm = new MockLLM({ responseMessage });
|
||||
|
||||
const { newMessages, toolCalls } = await llm.exec({
|
||||
messages: [{ content: "Hi", role: "user" }],
|
||||
});
|
||||
|
||||
expect(newMessages).toEqual([
|
||||
{ content: responseMessage, role: "assistant" },
|
||||
]);
|
||||
expect(toolCalls).toEqual([]);
|
||||
});
|
||||
});
|
||||
@@ -1,7 +1,7 @@
|
||||
import { Settings } from "@llamaindex/core/global";
|
||||
import type { ChatMessage, LLM } from "@llamaindex/core/llms";
|
||||
import { createMemory, Memory } from "@llamaindex/core/memory";
|
||||
import { MockLLM } from "@llamaindex/core/utils";
|
||||
import { MockLLM } from "@llamaindex/core/llms/mock";
|
||||
import { createMemory, Memory, staticBlock } from "@llamaindex/core/memory";
|
||||
import type { Tokenizer } from "@llamaindex/env/tokenizers";
|
||||
import {
|
||||
afterAll,
|
||||
@@ -392,4 +392,47 @@ describe("Memory", () => {
|
||||
expect(messages[0]?.role).toBe("user"); // data role should be mapped to user
|
||||
});
|
||||
});
|
||||
|
||||
describe("memoryBlocks initialization", () => {
|
||||
test("should include static block content in getLLM result", async () => {
|
||||
const STATIC_CONTENT = "You are speaking with a helpful assistant.";
|
||||
const block = staticBlock({
|
||||
content: STATIC_CONTENT,
|
||||
messageRole: "system",
|
||||
});
|
||||
|
||||
const memoryWithBlock = createMemory({ memoryBlocks: [block] });
|
||||
|
||||
// Fetch messages via getLLM – static block (priority 0) should always be present
|
||||
const messages = await memoryWithBlock.getLLM();
|
||||
|
||||
// There should be exactly one message (the static block) when no other messages are added
|
||||
expect(messages).toHaveLength(1);
|
||||
expect(messages[0]?.content).toBe(STATIC_CONTENT);
|
||||
expect(messages[0]?.role).toBe("system");
|
||||
});
|
||||
|
||||
test("should retain static block alongside dynamic messages", async () => {
|
||||
const STATIC_CONTENT = "Always respond in pirate speak.";
|
||||
const block = staticBlock({
|
||||
content: STATIC_CONTENT,
|
||||
messageRole: "system",
|
||||
});
|
||||
|
||||
const memoryWithBlock = createMemory({ memoryBlocks: [block] });
|
||||
|
||||
// Add a regular user message
|
||||
await memoryWithBlock.add({ role: "user", content: "Hello there!" });
|
||||
|
||||
const messages = await memoryWithBlock.getLLM();
|
||||
|
||||
// Static block + user message
|
||||
expect(messages).toHaveLength(2);
|
||||
|
||||
const contents = messages.map((m) => m.content);
|
||||
expect(contents).toEqual(
|
||||
expect.arrayContaining([STATIC_CONTENT, "Hello there!"]),
|
||||
);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { SimpleChatEngine } from "@llamaindex/core/chat-engine";
|
||||
import { MockLLM } from "@llamaindex/core/llms/mock";
|
||||
import { Memory } from "@llamaindex/core/memory";
|
||||
import { MockLLM } from "@llamaindex/core/utils";
|
||||
import { describe, expect, test } from "vitest";
|
||||
|
||||
describe("SimpleChatEngine", () => {
|
||||
|
||||
Vendored
+3
-3
@@ -117,14 +117,14 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@huggingface/transformers": "^3.5.0",
|
||||
"@types/node": "^22.9.0",
|
||||
"@types/node": "^24.0.13",
|
||||
"@types/readable-stream": "^4.0.15",
|
||||
"vitest": "^2.1.5"
|
||||
},
|
||||
"dependencies": {
|
||||
"pathe": "^1.1.2",
|
||||
"@aws-crypto/sha256-js": "^5.2.0",
|
||||
"js-tiktoken": "^1.0.12"
|
||||
"js-tiktoken": "^1.0.12",
|
||||
"pathe": "^1.1.2"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@huggingface/transformers": "^3.5.0",
|
||||
|
||||
@@ -1,5 +1,41 @@
|
||||
# @llamaindex/experimental
|
||||
|
||||
## 0.0.196
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.19
|
||||
|
||||
## 0.0.195
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.18
|
||||
|
||||
## 0.0.194
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.17
|
||||
|
||||
## 0.0.193
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.16
|
||||
|
||||
## 0.0.192
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.15
|
||||
|
||||
## 0.0.191
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- llamaindex@0.11.14
|
||||
|
||||
## 0.0.190
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@llamaindex/experimental",
|
||||
"description": "Experimental package for LlamaIndexTS",
|
||||
"version": "0.0.190",
|
||||
"version": "0.0.196",
|
||||
"type": "module",
|
||||
"types": "dist/type/index.d.ts",
|
||||
"main": "dist/cjs/index.js",
|
||||
@@ -62,7 +62,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@types/lodash": "^4.17.7",
|
||||
"@types/node": "^22.9.0",
|
||||
"@types/node": "^24.0.13",
|
||||
"jsonpath": "^1.1.1",
|
||||
"llamaindex": "workspace:*",
|
||||
"lodash": "^4.17.21"
|
||||
|
||||
@@ -1,5 +1,57 @@
|
||||
# llamaindex
|
||||
|
||||
## 0.11.19
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [7ad3411]
|
||||
- Updated dependencies [5da5b3c]
|
||||
- @llamaindex/core@0.6.15
|
||||
- @llamaindex/workflow@1.1.15
|
||||
- @llamaindex/cloud@4.0.24
|
||||
- @llamaindex/node-parser@2.0.15
|
||||
|
||||
## 0.11.18
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [a1b1598]
|
||||
- @llamaindex/cloud@4.0.23
|
||||
|
||||
## 0.11.17
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [d2be868]
|
||||
- @llamaindex/cloud@4.0.22
|
||||
|
||||
## 0.11.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [579ca0c]
|
||||
- @llamaindex/cloud@4.0.21
|
||||
|
||||
## 0.11.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [48b0d88]
|
||||
- Updated dependencies [f185772]
|
||||
- @llamaindex/cloud@4.0.20
|
||||
|
||||
## 0.11.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [5a0ed1f]
|
||||
- Updated dependencies [5a0ed1f]
|
||||
- Updated dependencies [8eeac33]
|
||||
- @llamaindex/cloud@4.0.19
|
||||
- @llamaindex/core@0.6.14
|
||||
- @llamaindex/node-parser@2.0.14
|
||||
- @llamaindex/workflow@1.1.14
|
||||
|
||||
## 0.11.13
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "llamaindex",
|
||||
"version": "0.11.13",
|
||||
"version": "0.11.19",
|
||||
"license": "MIT",
|
||||
"type": "module",
|
||||
"keywords": [
|
||||
@@ -26,13 +26,13 @@
|
||||
"@llamaindex/node-parser": "workspace:*",
|
||||
"@llamaindex/workflow": "workspace:*",
|
||||
"@types/lodash": "^4.17.7",
|
||||
"@types/node": "^22.9.0",
|
||||
"@types/node": "^24.0.13",
|
||||
"lodash": "^4.17.21",
|
||||
"magic-bytes.js": "^1.10.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"ajv": "^8.17.1",
|
||||
"@types/node": "^22.9.0"
|
||||
"@types/node": "^22.9.0",
|
||||
"ajv": "^8.17.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=18.0.0"
|
||||
|
||||
@@ -1,5 +1,18 @@
|
||||
# @llamaindex/core-test
|
||||
|
||||
## 0.1.10
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [a1fdb07]
|
||||
- @llamaindex/openai@0.4.9
|
||||
|
||||
## 0.1.9
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- @llamaindex/openai@0.4.8
|
||||
|
||||
## 0.1.8
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@llamaindex/llamaindex-test",
|
||||
"private": true,
|
||||
"version": "0.1.8",
|
||||
"version": "0.1.10",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"test": "vitest run"
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# @llamaindex/node-parser
|
||||
|
||||
## 2.0.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [7ad3411]
|
||||
- Updated dependencies [5da5b3c]
|
||||
- @llamaindex/core@0.6.15
|
||||
|
||||
## 2.0.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [8eeac33]
|
||||
- @llamaindex/core@0.6.14
|
||||
|
||||
## 2.0.13
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@llamaindex/node-parser",
|
||||
"version": "2.0.13",
|
||||
"version": "2.0.15",
|
||||
"description": "Node parser for LlamaIndex",
|
||||
"type": "module",
|
||||
"exports": {
|
||||
@@ -42,7 +42,7 @@
|
||||
"@llamaindex/core": "workspace:*",
|
||||
"@llamaindex/env": "workspace:*",
|
||||
"@types/html-to-text": "^9.0.4",
|
||||
"@types/node": "^22.9.0",
|
||||
"@types/node": "^24.0.13",
|
||||
"tree-sitter": "^0.22.1",
|
||||
"web-tree-sitter": "^0.24.4"
|
||||
},
|
||||
|
||||
@@ -1,5 +1,21 @@
|
||||
# @llamaindex/anthropic
|
||||
|
||||
## 0.3.17
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- ddc0eaf: anthropic: stream partial tool calls
|
||||
- Updated dependencies [7ad3411]
|
||||
- Updated dependencies [5da5b3c]
|
||||
- @llamaindex/core@0.6.15
|
||||
|
||||
## 0.3.16
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [8eeac33]
|
||||
- @llamaindex/core@0.6.14
|
||||
|
||||
## 0.3.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@llamaindex/anthropic",
|
||||
"description": "Anthropic Adapter for LlamaIndex",
|
||||
"version": "0.3.15",
|
||||
"version": "0.3.17",
|
||||
"type": "module",
|
||||
"main": "./dist/index.cjs",
|
||||
"module": "./dist/index.js",
|
||||
|
||||
@@ -578,7 +578,6 @@ export class Anthropic extends ToolCallLLM<
|
||||
});
|
||||
|
||||
let currentToolCall: PartialToolCall | null = null;
|
||||
let accumulatedToolInput = "";
|
||||
|
||||
for await (const part of stream) {
|
||||
const textContent =
|
||||
@@ -607,7 +606,13 @@ export class Anthropic extends ToolCallLLM<
|
||||
name: part.content_block.name,
|
||||
input: "",
|
||||
};
|
||||
accumulatedToolInput = "";
|
||||
yield {
|
||||
raw: part,
|
||||
delta: "",
|
||||
options: {
|
||||
toolCall: [currentToolCall],
|
||||
},
|
||||
};
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -616,7 +621,14 @@ export class Anthropic extends ToolCallLLM<
|
||||
part.delta.type === "input_json_delta" &&
|
||||
currentToolCall
|
||||
) {
|
||||
accumulatedToolInput += part.delta.partial_json;
|
||||
currentToolCall.input += part.delta.partial_json;
|
||||
yield {
|
||||
raw: part,
|
||||
delta: "",
|
||||
options: {
|
||||
toolCall: [currentToolCall],
|
||||
},
|
||||
};
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -625,13 +637,7 @@ export class Anthropic extends ToolCallLLM<
|
||||
raw: part,
|
||||
delta: "",
|
||||
options: {
|
||||
toolCall: [
|
||||
{
|
||||
id: currentToolCall.id,
|
||||
name: currentToolCall.name,
|
||||
input: accumulatedToolInput,
|
||||
},
|
||||
],
|
||||
toolCall: [currentToolCall],
|
||||
},
|
||||
};
|
||||
currentToolCall = null;
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# @llamaindex/assemblyai
|
||||
|
||||
## 0.1.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [7ad3411]
|
||||
- Updated dependencies [5da5b3c]
|
||||
- @llamaindex/core@0.6.15
|
||||
|
||||
## 0.1.13
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [8eeac33]
|
||||
- @llamaindex/core@0.6.14
|
||||
|
||||
## 0.1.12
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@llamaindex/assemblyai",
|
||||
"description": "AssemblyAI Reader for LlamaIndex",
|
||||
"version": "0.1.12",
|
||||
"version": "0.1.14",
|
||||
"type": "module",
|
||||
"types": "dist/index.d.ts",
|
||||
"main": "dist/index.cjs",
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# @llamaindex/community
|
||||
|
||||
## 0.0.110
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [7ad3411]
|
||||
- Updated dependencies [5da5b3c]
|
||||
- @llamaindex/core@0.6.15
|
||||
|
||||
## 0.0.109
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [8eeac33]
|
||||
- @llamaindex/core@0.6.14
|
||||
|
||||
## 0.0.108
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@llamaindex/aws",
|
||||
"description": "AWS package for LlamaIndexTS",
|
||||
"version": "0.0.108",
|
||||
"version": "0.0.110",
|
||||
"type": "module",
|
||||
"types": "dist/type/index.d.ts",
|
||||
"main": "dist/cjs/index.js",
|
||||
@@ -44,7 +44,7 @@
|
||||
"devDependencies": {
|
||||
"@llamaindex/core": "workspace:*",
|
||||
"@llamaindex/env": "workspace:*",
|
||||
"@types/node": "^22.9.0"
|
||||
"@types/node": "^24.0.13"
|
||||
},
|
||||
"dependencies": {
|
||||
"@aws-sdk/client-bedrock-agent-runtime": "^3.706.0",
|
||||
|
||||
@@ -1,5 +1,23 @@
|
||||
# @llamaindex/clip
|
||||
|
||||
## 0.0.65
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [7ad3411]
|
||||
- Updated dependencies [5da5b3c]
|
||||
- Updated dependencies [a1fdb07]
|
||||
- @llamaindex/core@0.6.15
|
||||
- @llamaindex/openai@0.4.9
|
||||
|
||||
## 0.0.64
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [8eeac33]
|
||||
- @llamaindex/core@0.6.14
|
||||
- @llamaindex/openai@0.4.8
|
||||
|
||||
## 0.0.63
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@llamaindex/clip",
|
||||
"description": "Clip Embedding Adapter for LlamaIndex",
|
||||
"version": "0.0.63",
|
||||
"version": "0.0.65",
|
||||
"type": "module",
|
||||
"types": "dist/index.d.ts",
|
||||
"main": "dist/index.cjs",
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# @llamaindex/cohere
|
||||
|
||||
## 0.0.29
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [7ad3411]
|
||||
- Updated dependencies [5da5b3c]
|
||||
- @llamaindex/core@0.6.15
|
||||
|
||||
## 0.0.28
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [8eeac33]
|
||||
- @llamaindex/core@0.6.14
|
||||
|
||||
## 0.0.27
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@llamaindex/cohere",
|
||||
"description": "Cohere Adapter for LlamaIndex",
|
||||
"version": "0.0.27",
|
||||
"version": "0.0.29",
|
||||
"type": "module",
|
||||
"main": "./dist/index.cjs",
|
||||
"module": "./dist/index.js",
|
||||
|
||||
@@ -1,5 +1,23 @@
|
||||
# @llamaindex/deepinfra
|
||||
|
||||
## 0.0.65
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [7ad3411]
|
||||
- Updated dependencies [5da5b3c]
|
||||
- Updated dependencies [a1fdb07]
|
||||
- @llamaindex/core@0.6.15
|
||||
- @llamaindex/openai@0.4.9
|
||||
|
||||
## 0.0.64
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [8eeac33]
|
||||
- @llamaindex/core@0.6.14
|
||||
- @llamaindex/openai@0.4.8
|
||||
|
||||
## 0.0.63
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@llamaindex/deepinfra",
|
||||
"description": "Deepinfra Adapter for LlamaIndex",
|
||||
"version": "0.0.63",
|
||||
"version": "0.0.65",
|
||||
"type": "module",
|
||||
"main": "./dist/index.cjs",
|
||||
"module": "./dist/index.js",
|
||||
|
||||
@@ -1,5 +1,24 @@
|
||||
# @llamaindex/deepseek
|
||||
|
||||
## 0.0.26
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [a1fdb07]
|
||||
- @llamaindex/openai@0.4.9
|
||||
|
||||
## 0.0.25
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- af3f866: feat: add supportToolCall getter to DeepSeekLLM class
|
||||
|
||||
## 0.0.24
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- @llamaindex/openai@0.4.8
|
||||
|
||||
## 0.0.23
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@llamaindex/deepseek",
|
||||
"description": "DeepSeek Adapter for LlamaIndex",
|
||||
"version": "0.0.23",
|
||||
"version": "0.0.26",
|
||||
"type": "module",
|
||||
"main": "./dist/index.cjs",
|
||||
"module": "./dist/index.js",
|
||||
|
||||
@@ -34,6 +34,10 @@ export class DeepSeekLLM extends OpenAI {
|
||||
...rest,
|
||||
});
|
||||
}
|
||||
|
||||
get supportToolCall() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# @llamaindex/discord
|
||||
|
||||
## 0.1.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [7ad3411]
|
||||
- Updated dependencies [5da5b3c]
|
||||
- @llamaindex/core@0.6.15
|
||||
|
||||
## 0.1.13
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [8eeac33]
|
||||
- @llamaindex/core@0.6.14
|
||||
|
||||
## 0.1.12
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@llamaindex/discord",
|
||||
"description": "Discord Reader for LlamaIndex",
|
||||
"version": "0.1.12",
|
||||
"version": "0.1.14",
|
||||
"type": "module",
|
||||
"types": "dist/index.d.ts",
|
||||
"main": "dist/index.cjs",
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# @llamaindex/excel
|
||||
|
||||
## 0.1.15
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [7ad3411]
|
||||
- Updated dependencies [5da5b3c]
|
||||
- @llamaindex/core@0.6.15
|
||||
|
||||
## 0.1.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [8eeac33]
|
||||
- @llamaindex/core@0.6.14
|
||||
|
||||
## 0.1.13
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@llamaindex/excel",
|
||||
"description": "Excel Reader for LlamaIndex",
|
||||
"version": "0.1.13",
|
||||
"version": "0.1.15",
|
||||
"type": "module",
|
||||
"types": "dist/index.d.ts",
|
||||
"main": "dist/index.cjs",
|
||||
|
||||
@@ -1,5 +1,18 @@
|
||||
# @llamaindex/fireworks
|
||||
|
||||
## 0.0.25
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [a1fdb07]
|
||||
- @llamaindex/openai@0.4.9
|
||||
|
||||
## 0.0.24
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- @llamaindex/openai@0.4.8
|
||||
|
||||
## 0.0.23
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@llamaindex/fireworks",
|
||||
"description": "Fireworks Adapter for LlamaIndex",
|
||||
"version": "0.0.23",
|
||||
"version": "0.0.25",
|
||||
"type": "module",
|
||||
"main": "./dist/index.cjs",
|
||||
"module": "./dist/index.js",
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
# @llamaindex/google
|
||||
|
||||
## 0.3.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [7ad3411]
|
||||
- Updated dependencies [5da5b3c]
|
||||
- @llamaindex/core@0.6.15
|
||||
|
||||
## 0.3.13
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [8eeac33]
|
||||
- @llamaindex/core@0.6.14
|
||||
|
||||
## 0.3.12
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@llamaindex/google",
|
||||
"description": "Google Adapter for LlamaIndex",
|
||||
"version": "0.3.12",
|
||||
"version": "0.3.14",
|
||||
"type": "module",
|
||||
"main": "./dist/index.cjs",
|
||||
"module": "./dist/index.js",
|
||||
|
||||
@@ -1,5 +1,18 @@
|
||||
# @llamaindex/groq
|
||||
|
||||
## 0.0.81
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [a1fdb07]
|
||||
- @llamaindex/openai@0.4.9
|
||||
|
||||
## 0.0.80
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- @llamaindex/openai@0.4.8
|
||||
|
||||
## 0.0.79
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@llamaindex/groq",
|
||||
"description": "Groq Adapter for LlamaIndex",
|
||||
"version": "0.0.79",
|
||||
"version": "0.0.81",
|
||||
"type": "module",
|
||||
"main": "./dist/index.cjs",
|
||||
"module": "./dist/index.js",
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user