diff --git a/.npmrc b/.npmrc
index 5da1bc1c63972cde6364e06aed0f0b8fecba8f31..7f5ffd319da9a06e2fa17ec3f2a52e6fc4f3c020 100644
--- a/.npmrc
+++ b/.npmrc
@@ -2,3 +2,4 @@ auto-install-peers = true
 enable-pre-post-scripts = true
 prefer-workspace-packages = true
 save-workspace-protocol = true
+link-workspace-packages = true
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index df4ddf45402aaee833ed0bd12dea6ef0045fdea6..bd3cede6b8a62ccda8ec5bc5465d801b48e71f57 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -148,7 +148,7 @@ importers:
         version: 1.0.11
       llamaindex:
         specifier: '*'
-        version: 0.2.10(encoding@0.1.13)(node-fetch@2.7.0(encoding@0.1.13))(readable-stream@4.5.2)(typescript@5.4.5)
+        version: link:../packages/core
       mongodb:
         specifier: ^6.5.0
         version: 6.5.0
@@ -173,7 +173,7 @@ importers:
     dependencies:
       llamaindex:
         specifier: '*'
-        version: 0.2.10(encoding@0.1.13)(node-fetch@2.7.0(encoding@0.1.13))(readable-stream@4.5.2)(typescript@5.4.3)
+        version: link:../../packages/core
     devDependencies:
       '@types/node':
         specifier: ^20.12.7
@@ -1852,13 +1852,6 @@ packages:
       node-fetch:
         optional: true
 
-  '@llamaindex/env@0.0.7':
-    resolution: {integrity: sha512-6j7eGXhSDspz33FzdWJRTbGlXa3osYP/aP9dm10Z7JCxaxyQZmGIWL149HNkGgV4lxiPmGPx7YWjBBj9nRdo2w==}
-    peerDependencies:
-      '@aws-crypto/sha256-js': ^5.2.0
-      pathe: ^1.1.2
-      readable-stream: ^4.5.2
-
   '@manypkg/find-root@1.1.0':
     resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==}
 
@@ -5581,10 +5574,6 @@ packages:
     resolution: {integrity: sha512-ovJXBXkKGfq+CwmKTjluEqFi3p4h8xvkxGQQAQan22YCgef4KZ1mKGjzfGh6PL6AW5Csw0QiQPNuQyH+6Xk3hA==}
     engines: {node: '>=18.0.0'}
 
-  llamaindex@0.2.10:
-    resolution: {integrity: sha512-GXO/H4k6iF0dQStg1kOTYYm0pnMbD1gM8LwRKEPOeC/mY+Q2pyIyDB22cPc8nOTf+ah3rbLiXOxTORTUmC1xKA==}
-    engines: {node: '>=18.0.0'}
-
   load-yaml-file@0.2.0:
     resolution: {integrity: sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==}
     engines: {node: '>=6'}
@@ -10812,15 +10801,6 @@ snapshots:
     optionalDependencies:
       node-fetch: 2.7.0(encoding@0.1.13)
 
-  '@llamaindex/env@0.0.7(@aws-crypto/sha256-js@5.2.0)(pathe@1.1.2)(readable-stream@4.5.2)':
-    dependencies:
-      '@aws-crypto/sha256-js': 5.2.0
-      '@types/lodash': 4.17.0
-      '@types/node': 20.12.7
-      lodash: 4.17.21
-      pathe: 1.1.2
-      readable-stream: 4.5.2
-
   '@manypkg/find-root@1.1.0':
     dependencies:
       '@babel/runtime': 7.24.4
@@ -11000,13 +10980,6 @@ snapshots:
 
   '@protobufjs/utf8@1.1.0': {}
 
-  '@qdrant/js-client-rest@1.8.2(typescript@5.4.3)':
-    dependencies:
-      '@qdrant/openapi-typescript-fetch': 1.2.6
-      '@sevinf/maybe': 0.5.0
-      typescript: 5.4.3
-      undici: 5.28.4
-
   '@qdrant/js-client-rest@1.8.2(typescript@5.4.5)':
     dependencies:
       '@qdrant/openapi-typescript-fetch': 1.2.6
@@ -15097,122 +15070,6 @@ snapshots:
       rfdc: 1.3.1
       wrap-ansi: 9.0.0
 
-  llamaindex@0.2.10(encoding@0.1.13)(node-fetch@2.7.0(encoding@0.1.13))(readable-stream@4.5.2)(typescript@5.4.3):
-    dependencies:
-      '@anthropic-ai/sdk': 0.20.6(encoding@0.1.13)
-      '@aws-crypto/sha256-js': 5.2.0
-      '@datastax/astra-db-ts': 1.0.1
-      '@grpc/grpc-js': 1.10.6
-      '@llamaindex/cloud': 0.0.5(node-fetch@2.7.0(encoding@0.1.13))
-      '@llamaindex/env': 0.0.7(@aws-crypto/sha256-js@5.2.0)(pathe@1.1.2)(readable-stream@4.5.2)
-      '@mistralai/mistralai': 0.1.3(encoding@0.1.13)
-      '@notionhq/client': 2.2.15(encoding@0.1.13)
-      '@pinecone-database/pinecone': 2.2.0
-      '@qdrant/js-client-rest': 1.8.2(typescript@5.4.3)
-      '@types/lodash': 4.17.0
-      '@types/node': 20.12.7
-      '@types/papaparse': 5.3.14
-      '@types/pg': 8.11.5
-      '@xenova/transformers': 2.17.1
-      '@zilliz/milvus2-sdk-node': 2.4.1
-      ajv: 8.12.0
-      assemblyai: 4.4.1
-      chromadb: 1.7.3(cohere-ai@7.9.5(encoding@0.1.13))(encoding@0.1.13)(openai@4.38.0(encoding@0.1.13))
-      cohere-ai: 7.9.5(encoding@0.1.13)
-      js-tiktoken: 1.0.11
-      lodash: 4.17.21
-      magic-bytes.js: 1.10.0
-      mammoth: 1.7.1
-      md-utils-ts: 2.0.0
-      mongodb: 6.5.0
-      notion-md-crawler: 0.0.2(encoding@0.1.13)
-      openai: 4.38.0(encoding@0.1.13)
-      papaparse: 5.4.1
-      pathe: 1.1.2
-      pdf2json: 3.0.5
-      pg: 8.11.5
-      pgvector: 0.1.8
-      portkey-ai: 0.1.16
-      rake-modified: 1.0.8
-      string-strip-html: 13.4.8
-      wikipedia: 2.1.2
-      wink-nlp: 1.14.3
-    transitivePeerDependencies:
-      - '@aws-sdk/credential-providers'
-      - '@google/generative-ai'
-      - '@mongodb-js/zstd'
-      - bufferutil
-      - debug
-      - encoding
-      - gcp-metadata
-      - kerberos
-      - mongodb-client-encryption
-      - node-fetch
-      - pg-native
-      - readable-stream
-      - snappy
-      - socks
-      - typescript
-      - utf-8-validate
-
-  llamaindex@0.2.10(encoding@0.1.13)(node-fetch@2.7.0(encoding@0.1.13))(readable-stream@4.5.2)(typescript@5.4.5):
-    dependencies:
-      '@anthropic-ai/sdk': 0.20.6(encoding@0.1.13)
-      '@aws-crypto/sha256-js': 5.2.0
-      '@datastax/astra-db-ts': 1.0.1
-      '@grpc/grpc-js': 1.10.6
-      '@llamaindex/cloud': 0.0.5(node-fetch@2.7.0(encoding@0.1.13))
-      '@llamaindex/env': 0.0.7(@aws-crypto/sha256-js@5.2.0)(pathe@1.1.2)(readable-stream@4.5.2)
-      '@mistralai/mistralai': 0.1.3(encoding@0.1.13)
-      '@notionhq/client': 2.2.15(encoding@0.1.13)
-      '@pinecone-database/pinecone': 2.2.0
-      '@qdrant/js-client-rest': 1.8.2(typescript@5.4.5)
-      '@types/lodash': 4.17.0
-      '@types/node': 20.12.7
-      '@types/papaparse': 5.3.14
-      '@types/pg': 8.11.5
-      '@xenova/transformers': 2.17.1
-      '@zilliz/milvus2-sdk-node': 2.4.1
-      ajv: 8.12.0
-      assemblyai: 4.4.1
-      chromadb: 1.7.3(cohere-ai@7.9.5(encoding@0.1.13))(encoding@0.1.13)(openai@4.38.0(encoding@0.1.13))
-      cohere-ai: 7.9.5(encoding@0.1.13)
-      js-tiktoken: 1.0.11
-      lodash: 4.17.21
-      magic-bytes.js: 1.10.0
-      mammoth: 1.7.1
-      md-utils-ts: 2.0.0
-      mongodb: 6.5.0
-      notion-md-crawler: 0.0.2(encoding@0.1.13)
-      openai: 4.38.0(encoding@0.1.13)
-      papaparse: 5.4.1
-      pathe: 1.1.2
-      pdf2json: 3.0.5
-      pg: 8.11.5
-      pgvector: 0.1.8
-      portkey-ai: 0.1.16
-      rake-modified: 1.0.8
-      string-strip-html: 13.4.8
-      wikipedia: 2.1.2
-      wink-nlp: 1.14.3
-    transitivePeerDependencies:
-      - '@aws-sdk/credential-providers'
-      - '@google/generative-ai'
-      - '@mongodb-js/zstd'
-      - bufferutil
-      - debug
-      - encoding
-      - gcp-metadata
-      - kerberos
-      - mongodb-client-encryption
-      - node-fetch
-      - pg-native
-      - readable-stream
-      - snappy
-      - socks
-      - typescript
-      - utf-8-validate
-
   load-yaml-file@0.2.0:
     dependencies:
       graceful-fs: 4.2.11