{"_id":"@ai-d/aid","_rev":"8-6f5d5c7bf11eee8bcbf2588175da98fb","name":"@ai-d/aid","dist-tags":{"latest":"0.1.5"},"versions":{"0.0.0":{"name":"@ai-d/aid","description":"Aid provides a structured and type-safe way to interact with LLMs.","version":"0.0.0","author":{"name":"JacobLinCool","email":"jacoblincool@gmail.com","url":"https://jacoblin.cool"},"license":"MIT","keywords":["large-language-model","type-safety","zod","openai","schema-validation","json-schema","machine-learning","data-validation","developer-tools","programming-interface","software-development","natural-language-processing"],"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.js","types":"./dist/index.d.ts"}},"dependencies":{"debug":"^4.3.4","zod-to-json-schema":"^3.22.0","zod-to-ts":"^1.2.0"},"peerDependencies":{"openai":"^4.0.0","zod":"^3.0.0"},"devDependencies":{"@types/debug":"^4.1.12","@types/node":"^20.9.4","openai":"^4.19.1","tsup":"^8.0.1","typedoc":"^0.25.3","typescript":"^5.3.2","zod":"^3.22.4"},"repository":{"type":"git","url":"git+https://github.com/JacobLinCool/aid.git"},"bugs":{"url":"https://github.com/JacobLinCool/aid/issues"},"homepage":"https://jacoblincool.github.io/aid","scripts":{"build":"tsup","build:docs":"typedoc --out docs src"},"_id":"@ai-d/aid@0.0.0","_integrity":"sha512-O9qE5cDDRLrdTScGTjN0an9KBe7tG5LUySCsYWbR0SR/qIDC+PoyZVpOtEk48Gl/+vNdrhLDTjYZFHGLw+IiHw==","_resolved":"/tmp/1ddba2cbccaa3047d037605cd727809a/ai-d-aid-0.0.0.tgz","_from":"file:ai-d-aid-0.0.0.tgz","_nodeVersion":"18.18.2","_npmVersion":"9.8.1","dist":{"integrity":"sha512-O9qE5cDDRLrdTScGTjN0an9KBe7tG5LUySCsYWbR0SR/qIDC+PoyZVpOtEk48Gl/+vNdrhLDTjYZFHGLw+IiHw==","shasum":"a72d54408feeab82e8dc59f9dd4592b0a56754e5","tarball":"https://registry.npmjs.org/@ai-d/aid/-/aid-0.0.0.tgz","fileCount":7,"unpackedSize":12781,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBAL3DcA5iow2av0emk/1T1sewWA5DYzBGs11/HxsQdYAiEA02HBVk8CTP8KXwUIsZodMehnVk/sgb7BrMDQdrRlMXg="}]},"_npmUser":{"name":"jacoblincool","email":"jacoblincool@gmail.com"},"directories":{},"maintainers":[{"name":"jacoblincool","email":"jacoblincool@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/aid_0.0.0_1700675135461_0.50906033654654"},"_hasShrinkwrap":false},"0.0.1":{"name":"@ai-d/aid","description":"Aid provides a structured and type-safe way to interact with LLMs.","version":"0.0.1","author":{"name":"JacobLinCool","email":"jacoblincool@gmail.com","url":"https://jacoblin.cool"},"license":"MIT","keywords":["large-language-model","type-safety","zod","openai","schema-validation","json-schema","machine-learning","data-validation","developer-tools","programming-interface","software-development","natural-language-processing"],"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.js","types":"./dist/index.d.ts"}},"dependencies":{"debug":"^4.3.4","zod-to-json-schema":"^3.22.0","zod-to-ts":"^1.2.0"},"peerDependencies":{"openai":"^4.0.0","zod":"^3.0.0"},"devDependencies":{"@types/debug":"^4.1.12","@types/node":"^20.9.4","openai":"^4.19.1","tsup":"^8.0.1","typedoc":"^0.25.3","typescript":"^5.3.2","zod":"^3.22.4"},"repository":{"type":"git","url":"git+https://github.com/JacobLinCool/aid.git"},"bugs":{"url":"https://github.com/JacobLinCool/aid/issues"},"homepage":"https://jacoblincool.github.io/aid","scripts":{"build":"tsup","build:docs":"typedoc --out docs src"},"_id":"@ai-d/aid@0.0.1","_integrity":"sha512-x2crTH/TExl7GdIoUJ+bN4D4fGHj1jROXLcCkRuqp6rZ/3vr6xzCtDdsQnD+7wwQqlM08H7POWAhHuJluqb77Q==","_resolved":"/tmp/fe4154753a46d0c7e8a892df39b096da/ai-d-aid-0.0.1.tgz","_from":"file:ai-d-aid-0.0.1.tgz","_nodeVersion":"18.18.2","_npmVersion":"9.8.1","dist":{"integrity":"sha512-x2crTH/TExl7GdIoUJ+bN4D4fGHj1jROXLcCkRuqp6rZ/3vr6xzCtDdsQnD+7wwQqlM08H7POWAhHuJluqb77Q==","shasum":"793318421d4b48cd4228cb503f71473f24508033","tarball":"https://registry.npmjs.org/@ai-d/aid/-/aid-0.0.1.tgz","fileCount":6,"unpackedSize":10237,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGQTrZPJORcl264yMzFl3OO4lGzCveuTQ287c9ivVT4iAiAhuFSOcRjZoMnYUCnvRnOX21l01nXWiPK5Lei2LbQavA=="}]},"_npmUser":{"name":"jacoblincool","email":"jacoblincool@gmail.com"},"directories":{},"maintainers":[{"name":"jacoblincool","email":"jacoblincool@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/aid_0.0.1_1700681670262_0.5902912169369299"},"_hasShrinkwrap":false},"0.0.2":{"name":"@ai-d/aid","description":"Aid provides a structured and type-safe way to interact with LLMs.","version":"0.0.2","author":{"name":"JacobLinCool","email":"jacoblincool@gmail.com","url":"https://jacoblin.cool"},"license":"MIT","keywords":["large-language-model","type-safety","zod","openai","schema-validation","json-schema","machine-learning","data-validation","developer-tools","programming-interface","software-development","natural-language-processing"],"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.js","types":"./dist/index.d.ts"}},"dependencies":{"debug":"^4.3.4","zod-to-json-schema":"^3.22.0","zod-to-ts":"^1.2.0"},"peerDependencies":{"openai":"^4.0.0","zod":"^3.0.0"},"devDependencies":{"@types/debug":"^4.1.12","@types/node":"^20.9.4","openai":"^4.19.1","tsup":"^8.0.1","typedoc":"^0.25.3","typescript":"^5.3.2","zod":"^3.22.4"},"repository":{"type":"git","url":"git+https://github.com/JacobLinCool/aid.git"},"bugs":{"url":"https://github.com/JacobLinCool/aid/issues"},"homepage":"https://jacoblincool.github.io/aid","scripts":{"build":"tsup","build:docs":"typedoc --out docs src"},"_id":"@ai-d/aid@0.0.2","_integrity":"sha512-/dLmckEPxcdvk/wmBG00E40Lxb6z8P3Bu2CF6X6RsY9ZZPaVJBjY8F1+CqIp7j6zeTNS4LxW8ew8wpV0IvnYfw==","_resolved":"/tmp/be2ee707360aec2a9e9078ca71ced705/ai-d-aid-0.0.2.tgz","_from":"file:ai-d-aid-0.0.2.tgz","_nodeVersion":"18.18.2","_npmVersion":"9.8.1","dist":{"integrity":"sha512-/dLmckEPxcdvk/wmBG00E40Lxb6z8P3Bu2CF6X6RsY9ZZPaVJBjY8F1+CqIp7j6zeTNS4LxW8ew8wpV0IvnYfw==","shasum":"dc1837bf0ebf8ee6558de5241ee77b2e252a9bbd","tarball":"https://registry.npmjs.org/@ai-d/aid/-/aid-0.0.2.tgz","fileCount":6,"unpackedSize":14739,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD/BNxjPVKZYjY5VGZ3By69/hxhEAQEQVv5d0co17KOuQIgMCQqLEBWVpKxwS7ArCLwjR855N6rjD2+U21NAXt/2iE="}]},"_npmUser":{"name":"jacoblincool","email":"jacoblincool@gmail.com"},"directories":{},"maintainers":[{"name":"jacoblincool","email":"jacoblincool@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/aid_0.0.2_1700795384643_0.3088559004633986"},"_hasShrinkwrap":false},"0.1.0":{"name":"@ai-d/aid","description":"Aid provides a structured and type-safe way to interact with LLMs.","version":"0.1.0","author":{"name":"JacobLinCool","email":"jacoblincool@gmail.com","url":"https://jacoblin.cool"},"license":"MIT","keywords":["large-language-model","type-safety","zod","openai","schema-validation","json-schema","machine-learning","data-validation","developer-tools","programming-interface","software-development","natural-language-processing"],"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.js","types":"./dist/index.d.ts"}},"dependencies":{"debug":"^4.3.4","zod-to-json-schema":"^3.22.0","zod-to-ts":"^1.2.0"},"peerDependencies":{"openai":"^4.0.0","zod":"^3.0.0"},"devDependencies":{"@types/debug":"^4.1.12","@types/node":"^20.9.4","openai":"^4.19.1","tsup":"^8.0.1","typedoc":"^0.25.3","typescript":"^5.3.2","zod":"^3.22.4"},"repository":{"type":"git","url":"git+https://github.com/JacobLinCool/aid.git"},"bugs":{"url":"https://github.com/JacobLinCool/aid/issues"},"homepage":"https://jacoblincool.github.io/aid","scripts":{"build":"tsup","build:docs":"typedoc --out docs src"},"_id":"@ai-d/aid@0.1.0","_integrity":"sha512-cBI6hWp5uoGR9QV9JvcI7QRRkZu9N5ZHo5Q1yTAnrXoQZy9XTS5/kuBvHiPKvoh03qoJkG5sNaqS0f9MMatN7w==","_resolved":"/tmp/ecb9ff1f9685b5cbd6ddc13e43274ea1/ai-d-aid-0.1.0.tgz","_from":"file:ai-d-aid-0.1.0.tgz","_nodeVersion":"18.18.2","_npmVersion":"9.8.1","dist":{"integrity":"sha512-cBI6hWp5uoGR9QV9JvcI7QRRkZu9N5ZHo5Q1yTAnrXoQZy9XTS5/kuBvHiPKvoh03qoJkG5sNaqS0f9MMatN7w==","shasum":"505867dc7d77ca12e32b6f4f46e8ce4d7e7a51d9","tarball":"https://registry.npmjs.org/@ai-d/aid/-/aid-0.1.0.tgz","fileCount":7,"unpackedSize":30864,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBVtmCyMI/8fiIZL9bIOLJL6e7LF1P9ySgfOyMfPwphfAiEA7oG7DzkjCeoWfKPPNogatMOD1m9MkDnLU+WcWjYslQI="}]},"_npmUser":{"name":"jacoblincool","email":"jacoblincool@gmail.com"},"directories":{},"maintainers":[{"name":"jacoblincool","email":"jacoblincool@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/aid_0.1.0_1700836837838_0.1993393197597222"},"_hasShrinkwrap":false},"0.1.1":{"name":"@ai-d/aid","description":"Aid provides a structured and type-safe way to interact with LLMs.","version":"0.1.1","author":{"name":"JacobLinCool","email":"jacoblincool@gmail.com","url":"https://jacoblin.cool"},"license":"MIT","keywords":["large-language-model","type-safety","zod","openai","schema-validation","json-schema","machine-learning","data-validation","developer-tools","programming-interface","software-development","natural-language-processing"],"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.js","types":"./dist/index.d.ts"}},"dependencies":{"debug":"^4.3.4","zod-to-json-schema":"^3.22.0","zod-to-ts":"^1.2.0"},"peerDependencies":{"openai":"^4.0.0","zod":"^3.0.0"},"devDependencies":{"@types/debug":"^4.1.12","@types/node":"^20.9.4","openai":"^4.19.1","tsup":"^8.0.1","typedoc":"^0.25.3","typescript":"^5.3.2","zod":"^3.22.4"},"repository":{"type":"git","url":"git+https://github.com/JacobLinCool/aid.git"},"bugs":{"url":"https://github.com/JacobLinCool/aid/issues"},"homepage":"https://jacoblincool.github.io/aid","scripts":{"build":"tsup","build:docs":"typedoc --out docs src"},"_id":"@ai-d/aid@0.1.1","_integrity":"sha512-EXKP6vcNMGwRJXPzz96pT34N3BJkTladl2yd0aUowmTYtoRD/3J5QEqaPJjqnyL47LUQfM3LY5M7syPAwz2Y+A==","_resolved":"/tmp/6f1928e2545b5afb397c3e1dba1141cf/ai-d-aid-0.1.1.tgz","_from":"file:ai-d-aid-0.1.1.tgz","_nodeVersion":"18.18.2","_npmVersion":"9.8.1","dist":{"integrity":"sha512-EXKP6vcNMGwRJXPzz96pT34N3BJkTladl2yd0aUowmTYtoRD/3J5QEqaPJjqnyL47LUQfM3LY5M7syPAwz2Y+A==","shasum":"e8aa956bcc72728133aa04602f5e4eef9905dd7d","tarball":"https://registry.npmjs.org/@ai-d/aid/-/aid-0.1.1.tgz","fileCount":7,"unpackedSize":31400,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDNwZCt6TyFzzjK2t9Tdq95JHa2Pe9O3vRoXbFyh4dERAiAK9pJLQjLGRhJ3BqHX4t/FEVCrkgxClxN+xjSa+B8DdQ=="}]},"_npmUser":{"name":"jacoblincool","email":"jacoblincool@gmail.com"},"directories":{},"maintainers":[{"name":"jacoblincool","email":"jacoblincool@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/aid_0.1.1_1701092816819_0.025826880213366987"},"_hasShrinkwrap":false},"0.1.2":{"name":"@ai-d/aid","description":"Aid provides a structured and type-safe way to interact with LLMs.","version":"0.1.2","author":{"name":"JacobLinCool","email":"jacoblincool@gmail.com","url":"https://jacoblin.cool"},"license":"MIT","keywords":["large-language-model","type-safety","zod","openai","schema-validation","json-schema","machine-learning","data-validation","developer-tools","programming-interface","software-development","natural-language-processing"],"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.js","types":"./dist/index.d.ts"}},"dependencies":{"debug":"^4.3.4","zod-to-json-schema":"^3.22.0","zod-to-ts":"^1.2.0"},"peerDependencies":{"openai":"^4.0.0","zod":"^3.0.0"},"devDependencies":{"@types/debug":"^4.1.12","@types/node":"^20.9.4","openai":"^4.19.1","tsup":"^8.0.1","typedoc":"^0.25.3","typescript":"^5.3.2","zod":"^3.22.4"},"repository":{"type":"git","url":"git+https://github.com/JacobLinCool/aid.git"},"bugs":{"url":"https://github.com/JacobLinCool/aid/issues"},"homepage":"https://jacoblincool.github.io/aid","scripts":{"build":"tsup","build:docs":"typedoc --out docs src"},"_id":"@ai-d/aid@0.1.2","_integrity":"sha512-fVKYDye2CGDBnSw6HC4MwSpnPsC2XIc2bwte+hmSSKV4289un6hZDMo3SNx/nRDVH2vjwDU84XY0ldcfu5gWVA==","_resolved":"/tmp/6a21621b32ed61d9a36337a43053a3ec/ai-d-aid-0.1.2.tgz","_from":"file:ai-d-aid-0.1.2.tgz","_nodeVersion":"18.18.2","_npmVersion":"9.8.1","dist":{"integrity":"sha512-fVKYDye2CGDBnSw6HC4MwSpnPsC2XIc2bwte+hmSSKV4289un6hZDMo3SNx/nRDVH2vjwDU84XY0ldcfu5gWVA==","shasum":"b873f6ae5647e3e3f13f6dd57a70249fbdf46aa1","tarball":"https://registry.npmjs.org/@ai-d/aid/-/aid-0.1.2.tgz","fileCount":7,"unpackedSize":31544,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAbTG8AAhFvTCyU9D5BZ3qxgngMaiZBk6XbaO2CTAN3QAiACJg9cudO1OlxfJMYHM3vR+1C/GA1tfUjoVlQstBHGFg=="}]},"_npmUser":{"name":"jacoblincool","email":"jacoblincool@gmail.com"},"directories":{},"maintainers":[{"name":"jacoblincool","email":"jacoblincool@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/aid_0.1.2_1701103952069_0.19881234753281385"},"_hasShrinkwrap":false},"0.1.3":{"name":"@ai-d/aid","description":"Aid provides a structured and type-safe way to interact with LLMs.","version":"0.1.3","author":{"name":"JacobLinCool","email":"jacoblincool@gmail.com","url":"https://jacoblin.cool"},"license":"MIT","keywords":["large-language-model","type-safety","zod","openai","schema-validation","json-schema","machine-learning","data-validation","developer-tools","programming-interface","software-development","natural-language-processing"],"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.js","types":"./dist/index.d.ts"}},"dependencies":{"debug":"^4.3.4","zod-to-json-schema":"^3.22.0","zod-to-ts":"^1.2.0"},"peerDependencies":{"openai":"^4.0.0","zod":"^3.0.0"},"devDependencies":{"@types/debug":"^4.1.12","@types/node":"^20.9.4","openai":"^4.19.1","tsup":"^8.0.1","typedoc":"^0.25.3","typescript":"^5.3.2","zod":"^3.22.4"},"repository":{"type":"git","url":"git+https://github.com/JacobLinCool/aid.git"},"bugs":{"url":"https://github.com/JacobLinCool/aid/issues"},"homepage":"https://jacoblincool.github.io/aid","scripts":{"build":"tsup","build:docs":"typedoc --out docs src"},"_id":"@ai-d/aid@0.1.3","_integrity":"sha512-G3sp01OPpfB/wMGcOmnRFW9B8jOnfnjseN9nZpoQI/i85p9IhzNGlJWNxSlTTRTNUfWR6B1ghXGniv3n4U+IlQ==","_resolved":"/tmp/182143ec00ea9773c72453bf40cd4245/ai-d-aid-0.1.3.tgz","_from":"file:ai-d-aid-0.1.3.tgz","_nodeVersion":"18.18.2","_npmVersion":"9.8.1","dist":{"integrity":"sha512-G3sp01OPpfB/wMGcOmnRFW9B8jOnfnjseN9nZpoQI/i85p9IhzNGlJWNxSlTTRTNUfWR6B1ghXGniv3n4U+IlQ==","shasum":"5bb492331e348e970eec25841da418817246104d","tarball":"https://registry.npmjs.org/@ai-d/aid/-/aid-0.1.3.tgz","fileCount":7,"unpackedSize":31556,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCDomit4ODtqW4FYUQbTRshRiPyLunDlBR6gTPYcSSyVwIhANo0+WE/Vw35r7ZFV2nHN2k+ArTxk2J4+QGxnWUU5cFq"}]},"_npmUser":{"name":"jacoblincool","email":"jacoblincool@gmail.com"},"directories":{},"maintainers":[{"name":"jacoblincool","email":"jacoblincool@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/aid_0.1.3_1701115631147_0.5975148150612799"},"_hasShrinkwrap":false},"0.1.4":{"name":"@ai-d/aid","description":"Aid provides a structured and type-safe way to interact with LLMs.","version":"0.1.4","author":{"name":"JacobLinCool","email":"jacoblincool@gmail.com","url":"https://jacoblin.cool"},"license":"MIT","keywords":["large-language-model","type-safety","zod","openai","schema-validation","json-schema","machine-learning","data-validation","developer-tools","programming-interface","software-development","natural-language-processing"],"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.js","types":"./dist/index.d.ts"}},"dependencies":{"debug":"^4.3.4","zod-to-json-schema":"^3.22.0"},"peerDependencies":{"openai":"^4.0.0","zod":"^3.0.0","zod-to-ts":"^1.2.0"},"peerDependenciesMeta":{"zod-to-ts":{"optional":true}},"devDependencies":{"@types/debug":"^4.1.12","@types/node":"^20.9.4","openai":"^4.19.1","tsup":"^8.0.1","typedoc":"^0.25.3","typescript":"^5.3.2","zod":"^3.22.4"},"repository":{"type":"git","url":"git+https://github.com/JacobLinCool/aid.git"},"bugs":{"url":"https://github.com/JacobLinCool/aid/issues"},"homepage":"https://jacoblincool.github.io/aid","scripts":{"build":"tsup","build:docs":"typedoc --out docs src"},"_id":"@ai-d/aid@0.1.4","_integrity":"sha512-9729VQMOADhPhrNZKffalVyCAVGOYTDW3vrx/O9T21Ozx49pH5PVF9yNIKjRtnOMa9qV1sZfkj5sQKmz5BJ8CQ==","_resolved":"/tmp/ffdb79efc1704c6be38678fbf58f8178/ai-d-aid-0.1.4.tgz","_from":"file:ai-d-aid-0.1.4.tgz","_nodeVersion":"18.18.2","_npmVersion":"9.8.1","dist":{"integrity":"sha512-9729VQMOADhPhrNZKffalVyCAVGOYTDW3vrx/O9T21Ozx49pH5PVF9yNIKjRtnOMa9qV1sZfkj5sQKmz5BJ8CQ==","shasum":"f356bf7dd7aec861559d75d24f2c8b465233e440","tarball":"https://registry.npmjs.org/@ai-d/aid/-/aid-0.1.4.tgz","fileCount":7,"unpackedSize":31637,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF7qANhimA9G3W+WNxBEGcFQYv1+rlKhBh85FxCsfI1OAiEA8+OSD1/ReoR4SaEL8U0PUvrEgd4160NqUkusjhq8VJA="}]},"_npmUser":{"name":"jacoblincool","email":"jacoblincool@gmail.com"},"directories":{},"maintainers":[{"name":"jacoblincool","email":"jacoblincool@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/aid_0.1.4_1701421844020_0.2610211341579207"},"_hasShrinkwrap":false},"0.1.5":{"name":"@ai-d/aid","description":"Aid provides a structured and type-safe way to interact with LLMs.","version":"0.1.5","author":{"name":"JacobLinCool","email":"jacoblincool@gmail.com","url":"https://jacoblin.cool"},"license":"MIT","keywords":["large-language-model","type-safety","zod","openai","schema-validation","json-schema","machine-learning","data-validation","developer-tools","programming-interface","software-development","natural-language-processing"],"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.js","types":"./dist/index.d.ts"}},"dependencies":{"debug":"^4.3.4","zod-to-json-schema":"^3.22.0"},"peerDependencies":{"openai":"^4.0.0","zod":"^3.0.0","zod-to-ts":"^1.2.0"},"peerDependenciesMeta":{"zod-to-ts":{"optional":true}},"devDependencies":{"@types/debug":"^4.1.12","@types/node":"^20.9.4","openai":"^4.19.1","tsup":"^8.0.1","typedoc":"^0.25.3","typescript":"^5.3.2","zod":"^3.22.4"},"repository":{"type":"git","url":"git+https://github.com/JacobLinCool/aid.git"},"bugs":{"url":"https://github.com/JacobLinCool/aid/issues"},"homepage":"https://jacoblincool.github.io/aid","scripts":{"build":"tsup","build:docs":"typedoc --out docs src"},"_id":"@ai-d/aid@0.1.5","_integrity":"sha512-DHvO/HD/IWz1acsaTQXoFTNZ/A6d+pCUlKmNzKTtAb1YzAGXPcN0cHjwFPUPZowz+Khl3Sj0wjB0ENTwLUdTKw==","_resolved":"/tmp/b399a97b0cf8573d0d09543f491ea26a/ai-d-aid-0.1.5.tgz","_from":"file:ai-d-aid-0.1.5.tgz","_nodeVersion":"18.18.2","_npmVersion":"9.8.1","dist":{"integrity":"sha512-DHvO/HD/IWz1acsaTQXoFTNZ/A6d+pCUlKmNzKTtAb1YzAGXPcN0cHjwFPUPZowz+Khl3Sj0wjB0ENTwLUdTKw==","shasum":"869063ca42ce53f650844e3170a0c0fb633447cf","tarball":"https://registry.npmjs.org/@ai-d/aid/-/aid-0.1.5.tgz","fileCount":7,"unpackedSize":31996,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDZfKIopiMqMyl7NdjIhAFJo3Rs0rrtg/vgIJ5gHMZj0wIgH3rjPIQMCb8coEjDFW3yi/GiECR53qfM+n1O/pd0wUc="}]},"_npmUser":{"name":"jacoblincool","email":"jacoblincool@gmail.com"},"directories":{},"maintainers":[{"name":"jacoblincool","email":"jacoblincool@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/aid_0.1.5_1701422521650_0.7718897638493445"},"_hasShrinkwrap":false}},"time":{"created":"2023-11-22T17:45:35.379Z","0.0.0":"2023-11-22T17:45:35.642Z","modified":"2023-12-01T09:22:02.070Z","0.0.1":"2023-11-22T19:34:30.474Z","0.0.2":"2023-11-24T03:09:44.851Z","0.1.0":"2023-11-24T14:40:38.006Z","0.1.1":"2023-11-27T13:46:57.014Z","0.1.2":"2023-11-27T16:52:32.272Z","0.1.3":"2023-11-27T20:07:11.304Z","0.1.4":"2023-12-01T09:10:44.192Z","0.1.5":"2023-12-01T09:22:01.854Z"},"maintainers":[{"name":"jacoblincool","email":"jacoblincool@gmail.com"}],"description":"Aid provides a structured and type-safe way to interact with LLMs.","homepage":"https://jacoblincool.github.io/aid","keywords":["large-language-model","type-safety","zod","openai","schema-validation","json-schema","machine-learning","data-validation","developer-tools","programming-interface","software-development","natural-language-processing"],"repository":{"type":"git","url":"git+https://github.com/JacobLinCool/aid.git"},"author":{"name":"JacobLinCool","email":"jacoblincool@gmail.com","url":"https://jacoblin.cool"},"bugs":{"url":"https://github.com/JacobLinCool/aid/issues"},"license":"MIT","readme":"# Aid: TypeScript Library for Typed LLM Interactions\n\nA.I. :D\n\n**Aid** is a TypeScript library designed for developers working with Large Language Models (LLMs) such as OpenAI's GPT-4 (including Vision) and GPT-3.5. The library focuses on ensuring **consistent, typed outputs** from LLM queries, enhancing the reliability and usability of LLM responses. Advanced users can leverage few-shot examples for more sophisticated use cases. It provides a structured and type-safe way to interact with LLMs.\n\n## Features\n\n- **Typed Response**: Aid leverages TypeScript and JSON Schema to ensure consistent, reliable outputs from LLMs, adheres to the predefined schema.\n- **Task Based**: Easily define custom tasks with specific input and output types, streamlining the process of LLM interactions.\n- **Few-Shot Learning Support**: Allows for the provision of few-shot prompt examples to guide the LLM in producing the desired output.\n- **Visual Task Support**: Includes support for visual tasks with image inputs, harnessing the power of OpenAI's GPT-4 Vision. [Example](https://github.com/JacobLinCool/aid/blob/main/packages/aid/tests/vision.test.ts)\n- **OpenAI Integration**: Integrates with OpenAI's official library to provide a seamless experience.\n- **Customizable**: Allows for customization LLM models, just implement the `QueryEngine` function. [Example](https://github.com/JacobLinCool/aid/blob/main/packages/aid/tests/cohere.test.ts)\n\n## Installation\n\n```sh\npnpm install @ai-d/aid\n```\n\n## Usage\n\n### Basic Setup\n\nFirst, import the necessary modules and set up your OpenAI instance:\n\n```ts\nimport { OpenAI } from \"openai\";\nimport { Aid } from \"@ai-d/aid\";\n\nconst openai = new OpenAI({ apiKey: \"your-api-key\" });\nconst aid = Aid.from(openai, { model: \"gpt-4-1106-preview\" });\n```\n\n<details>\n<summary>Using GPT-4 Vision</summary>\n\n```ts\nimport { OpenAI } from \"openai\";\nimport { Aid, OpenAIQuery } from \"@ai-d/aid\";\n\nconst openai = new OpenAI({ apiKey: \"your-api-key\" });\nconst aid = Aid.vision(\n    OpenAIQuery(openai, { model: \"gpt-4-vision-preview\", max_tokens: 2048 }),\n);\n```\n\n</details>\n\n<details>\n<summary>Using Other LLM</summary>\n\nFor example, [Cohere](https://cohere.ai/)'s Command.\n\n```ts\nimport { Aid, CohereQuery } from \"@ai-d/aid\";\n\nconst aid = Aid.chat(\n    CohereQuery(COHERE_TOKEN, { model: \"command\" }),\n);\n```\n\n> You can implement your own `QueryEngine` function.\n\n</details>\n\n### Creating a Custom Task\n\nDefine a custom task with expected output types:\n\n```ts\nimport { z } from \"zod\";\n\nconst analyze = aid.task(\n    \"Summarize and extract keywords\",\n    z.object({\n        summary: z.string().max(300),\n        keywords: z.array(z.string().max(30)).max(10),\n    }),\n);\n```\n\n<details>\n<summary>Visual Task Example</summary>\n\n```ts\nconst analyze = aid.task(\n    \"Analyze the person in the image\",\n    z.object({\n        gender: z.enum([\"boy\", \"girl\", \"other\"]),\n        age: z.enum([\"child\", \"teen\", \"adult\", \"elderly\"]),\n        emotion: z.enum([\"happy\", \"sad\", \"angry\", \"surprised\", \"neutral\"]),\n        clothing: z.string().max(100),\n        background: z.string().max(100),\n    }),\n);\n```\n\n</details>\n\n### Executing a Task\n\nExecute the task and handle the output:\n\n```ts\nconst { result } = await analyze(\"Your input here, e.g. a news article\");\nconsole.log(result); // { summary: \"...\", keywords: [\"...\", \"...\"] }\n```\n\n\n<details>\n<summary>Visual Task Example</summary>\n\n```ts\nconst datauri = `data:image/png;base64,${fs.readFileSync(\"path/to/image.png\" \"base64\")}`;\n\nconst { result } = await analyze({ images: [{ url: datauri }] });\nconsole.log(result); // { \"gender\": \"boy\", \"age\": \"teen\", ... }\n```\n\n</details>\n\n### Advanced Usage with Few-Shot Examples\n\nFor more complex scenarios, you can use few-shot examples:\n\n```ts\nconst run_advanced_task = aid.task(\n    \"Some Advanced Task\",\n    z.object({\n        // Define your output schema here\n    }),\n    {\n        examples: [\n            // Provide few-shot examples here\n        ],\n    }\n);\n```\n\n## Formulation\n\nCase Parameter -> (join) Task Defination -> (join) Format Constraint -> (perform) Query\n\n`Query` and `Format Constraint` are defined and implemented by the `QueryEngine` and `FormatEngine`.\n\n`Task Defination` is defined by the user with `task` method. Task Goal, Expected Schema, Examples, etc.\n\n`Case Parameter` is defined by the user on each single call. Text, Image, etc.\n\n## Contributing\n\nContributions are welcome! Please submit pull requests with any bug fixes or feature enhancements.\n","readmeFilename":"README.md"}