@mate-academy/llm-gateway 2.2.3-canary.6 โ 2.2.3-canary.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +156 -0
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.d.ts +1 -1
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.js.map +1 -1
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAICompletion.service.d.ts +1 -1
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAICompletion.service.js.map +1 -1
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAISpeechToText.service.d.ts +1 -1
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAISpeechToText.service.js.map +1 -1
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAITextToSpeech.service.d.ts +1 -1
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAITextToSpeech.service.js.map +1 -1
- package/dist/providers/OpenAI/services/OpenAIAssistance.service.d.ts +1 -1
- package/dist/providers/OpenAI/services/OpenAIAssistance.service.js.map +1 -1
- package/dist/providers/OpenAI/services/OpenAICompletion.service.d.ts +1 -1
- package/dist/providers/OpenAI/services/OpenAICompletion.service.js.map +1 -1
- package/dist/providers/OpenAI/services/OpenAISpeechToText.service.d.ts +1 -1
- package/dist/providers/OpenAI/services/OpenAISpeechToText.service.js +2 -10
- package/dist/providers/OpenAI/services/OpenAISpeechToText.service.js.map +1 -1
- package/dist/providers/OpenAI/services/OpenAITextToSpeech.service.d.ts +1 -1
- package/dist/providers/OpenAI/services/OpenAITextToSpeech.service.js.map +1 -1
- package/dist/services/LLMBaseService.abstract.d.ts +1 -1
- package/dist/tests/helpers.d.ts +20 -0
- package/dist/tests/helpers.js +1 -0
- package/dist/tests/helpers.js.map +1 -0
- package/dist/tests/integration/LLMAssistance.service.integration.test.d.ts +1 -0
- package/dist/tests/integration/LLMAssistance.service.integration.test.js +1 -0
- package/dist/tests/integration/LLMAssistance.service.integration.test.js.map +1 -0
- package/dist/tests/integration/LLMCompletion.service.integration.test.d.ts +1 -0
- package/dist/tests/integration/LLMCompletion.service.integration.test.js +1 -0
- package/dist/tests/integration/LLMCompletion.service.integration.test.js.map +1 -0
- package/dist/tests/integration/LLMSpeechToText.service.integration.test.d.ts +1 -0
- package/dist/tests/integration/LLMSpeechToText.service.integration.test.js +1 -0
- package/dist/tests/integration/LLMSpeechToText.service.integration.test.js.map +1 -0
- package/dist/tests/integration/LLMTextToSpeech.service.integration.test.d.ts +1 -0
- package/dist/tests/integration/LLMTextToSpeech.service.integration.test.js +1 -0
- package/dist/tests/integration/LLMTextToSpeech.service.integration.test.js.map +1 -0
- package/dist/tests/setup.d.ts +1 -0
- package/dist/tests/setup.js +1 -0
- package/dist/tests/setup.js.map +1 -0
- package/dist/tests/unit/promptBuilder.test.d.ts +1 -0
- package/dist/tests/unit/promptBuilder.test.js +1 -0
- package/dist/tests/unit/promptBuilder.test.js.map +1 -0
- package/package.json +14 -8
package/README.md
CHANGED
|
@@ -762,6 +762,38 @@ npm run test:silent
|
|
|
762
762
|
ENABLE_LOGGING=true npm test
|
|
763
763
|
```
|
|
764
764
|
|
|
765
|
+
### Interactive Prepublish Testing
|
|
766
|
+
|
|
767
|
+
The package includes an interactive test runner that supports both source and distributive testing:
|
|
768
|
+
|
|
769
|
+
```bash
|
|
770
|
+
# Run the interactive prepublish test suite
|
|
771
|
+
npm run prepublish-tests
|
|
772
|
+
```
|
|
773
|
+
|
|
774
|
+
**Features:**
|
|
775
|
+
- **Dual test discovery**: Automatically discovers both source (TypeScript) and distributive (compiled JavaScript) tests
|
|
776
|
+
- **Interactive selection**: Choose which tests to run with visual grouping by type and mode
|
|
777
|
+
- **Smart execution**: Runs source tests first, then distributive tests (if source tests pass)
|
|
778
|
+
- **Automatic preparation**: Builds package and generates distributive tests automatically
|
|
779
|
+
- **Comprehensive coverage**: Ensures both development and production code work identically
|
|
780
|
+
|
|
781
|
+
**Test Organization:**
|
|
782
|
+
- **Source Tests** ๐งช๐: Tests run against TypeScript source code
|
|
783
|
+
- Unit Tests: Fast, isolated component testing
|
|
784
|
+
- Integration Tests: API integration with real services
|
|
785
|
+
- **Distributive Tests** ๐ฆ: Tests run against compiled JavaScript
|
|
786
|
+
- Same test logic, different execution environment
|
|
787
|
+
- Validates the built package works as expected
|
|
788
|
+
|
|
789
|
+
**Usage Flow:**
|
|
790
|
+
1. **Discovery**: Script finds all available tests in both source and distributive modes
|
|
791
|
+
2. **Selection**: Interactive interface lets you choose which tests to run
|
|
792
|
+
3. **Source Execution**: Selected source tests run first using standard Jest config
|
|
793
|
+
4. **Distributive Preparation**: If source tests pass, builds package and generates distributive tests
|
|
794
|
+
5. **Distributive Execution**: Runs distributive tests using specialized Jest configuration
|
|
795
|
+
6. **Results**: Comprehensive reporting of both test modes
|
|
796
|
+
|
|
765
797
|
### Test Configuration
|
|
766
798
|
|
|
767
799
|
Integration tests require API keys for the respective providers:
|
|
@@ -874,6 +906,130 @@ describe('Custom LLM Integration Test', () => {
|
|
|
874
906
|
});
|
|
875
907
|
```
|
|
876
908
|
|
|
909
|
+
## Distributive Testing
|
|
910
|
+
|
|
911
|
+
The LLM Gateway includes advanced distributive testing capabilities that ensure your built package works identically to your source code. This system automatically creates mirror tests that run against the compiled JavaScript distributive.
|
|
912
|
+
|
|
913
|
+
### Overview
|
|
914
|
+
|
|
915
|
+
Distributive testing automatically:
|
|
916
|
+
1. Builds your package (`npm run build`)
|
|
917
|
+
2. Creates mirror test files that import from `dist/` instead of `src/`
|
|
918
|
+
3. Runs tests against the compiled JavaScript distributive
|
|
919
|
+
4. Maintains identical test logic and assertions
|
|
920
|
+
|
|
921
|
+
### Available Commands
|
|
922
|
+
|
|
923
|
+
#### Source Tests (Original)
|
|
924
|
+
```bash
|
|
925
|
+
npm run test # Run all source tests with logging
|
|
926
|
+
npm run test:silent # Run all source tests without logging
|
|
927
|
+
npm run test:integration # Run only integration tests with logging
|
|
928
|
+
```
|
|
929
|
+
|
|
930
|
+
#### Distributive Tests
|
|
931
|
+
```bash
|
|
932
|
+
npm run test:dist # Run all distributive tests with logging
|
|
933
|
+
npm run test:dist:silent # Run all distributive tests without logging
|
|
934
|
+
npm run test:dist:integration # Run only distributive integration tests
|
|
935
|
+
```
|
|
936
|
+
|
|
937
|
+
#### Combined Testing
|
|
938
|
+
```bash
|
|
939
|
+
npm run test:both # Run both source and distributive tests
|
|
940
|
+
```
|
|
941
|
+
|
|
942
|
+
#### Utility Commands
|
|
943
|
+
```bash
|
|
944
|
+
npm run create-dist-tests # Generate distributive test files
|
|
945
|
+
npm run clean # Clean both dist/ and dist-tests/ folders
|
|
946
|
+
```
|
|
947
|
+
|
|
948
|
+
### How It Works
|
|
949
|
+
|
|
950
|
+
#### 1. Automatic Test Generation
|
|
951
|
+
The `scripts/create-dist-tests.js` script:
|
|
952
|
+
- Scans `src/tests/` for all `*.test.ts` files
|
|
953
|
+
- Creates mirror copies in `dist-tests/`
|
|
954
|
+
- Transforms imports from `@/...` to `../../dist/...`
|
|
955
|
+
- Generates `helpers.ts` from source helpers with updated imports
|
|
956
|
+
- Copies the entire `assets/` folder with test files
|
|
957
|
+
|
|
958
|
+
#### 2. Import Transformation
|
|
959
|
+
**Original source test:**
|
|
960
|
+
```typescript
|
|
961
|
+
import { LLMServiceFactory } from '@/index';
|
|
962
|
+
import { resolveTestConfig } from '@/tests/helpers';
|
|
963
|
+
```
|
|
964
|
+
|
|
965
|
+
**Generated distributive test:**
|
|
966
|
+
```typescript
|
|
967
|
+
import { LLMServiceFactory } from '../../dist/index';
|
|
968
|
+
import { resolveTestConfig } from '../helpers';
|
|
969
|
+
```
|
|
970
|
+
|
|
971
|
+
#### 3. Logging Differentiation
|
|
972
|
+
Distributive tests are clearly marked in logs:
|
|
973
|
+
- Source tests: `[INFO] message`
|
|
974
|
+
- Distributive tests: `[INFO][DIST] message`
|
|
975
|
+
|
|
976
|
+
### File Structure
|
|
977
|
+
|
|
978
|
+
```
|
|
979
|
+
src/tests/
|
|
980
|
+
โโโ helpers.ts # Source test helpers
|
|
981
|
+
โโโ setup.ts # Test setup
|
|
982
|
+
โโโ assets/ # Test assets (audio files, etc.)
|
|
983
|
+
โ โโโ stt.mp3
|
|
984
|
+
โ โโโ stt.wav
|
|
985
|
+
โ โโโ ...
|
|
986
|
+
โโโ unit/
|
|
987
|
+
โโโ integration/
|
|
988
|
+
|
|
989
|
+
dist/ # Built package (auto-generated)
|
|
990
|
+
|
|
991
|
+
dist-tests/ # Distributive tests (auto-generated)
|
|
992
|
+
โโโ helpers.ts # Generated from src/tests/helpers.ts
|
|
993
|
+
โโโ setup.ts # Copied from src/tests/setup.ts
|
|
994
|
+
โโโ assets/ # Copied from src/tests/assets/
|
|
995
|
+
โโโ unit/
|
|
996
|
+
โโโ integration/
|
|
997
|
+
```
|
|
998
|
+
|
|
999
|
+
### Key Benefits
|
|
1000
|
+
|
|
1001
|
+
1. **Confidence in Distribution**: Ensures your built package works exactly like your source
|
|
1002
|
+
2. **CI/CD Integration**: Can be run as part of your build pipeline
|
|
1003
|
+
3. **Debugging Aid**: Helps identify build-time issues vs runtime issues
|
|
1004
|
+
4. **Zero Maintenance**: Tests are auto-generated from source tests
|
|
1005
|
+
|
|
1006
|
+
### Usage Examples
|
|
1007
|
+
|
|
1008
|
+
#### Test Everything Before Publishing
|
|
1009
|
+
```bash
|
|
1010
|
+
npm run test:both # Verify both source and distributive work
|
|
1011
|
+
npm run prepublishOnly # Includes distributive testing
|
|
1012
|
+
```
|
|
1013
|
+
|
|
1014
|
+
#### Debug Distribution Issues
|
|
1015
|
+
```bash
|
|
1016
|
+
npm run test:dist # Test only the built distributive
|
|
1017
|
+
```
|
|
1018
|
+
|
|
1019
|
+
#### Integration with CI/CD
|
|
1020
|
+
```bash
|
|
1021
|
+
# In your CI pipeline
|
|
1022
|
+
npm run build
|
|
1023
|
+
npm run test:both # Test both source and dist
|
|
1024
|
+
```
|
|
1025
|
+
|
|
1026
|
+
### Notes
|
|
1027
|
+
|
|
1028
|
+
- Distributive tests use a relaxed TypeScript configuration to handle type differences between source and compiled code
|
|
1029
|
+
- Integration tests may require credentials (see environment variables above)
|
|
1030
|
+
- Test assets are automatically copied to `dist-tests/`
|
|
1031
|
+
- The `dist-tests/` folder is gitignored and cleaned automatically
|
|
1032
|
+
|
|
877
1033
|
## Developer Guide: Adding a New Provider
|
|
878
1034
|
|
|
879
1035
|
To add support for a new LLM provider, follow these steps:
|
package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ export declare class GoogleGenerativeAIAssistanceService extends LLMAssistanceSe
|
|
|
9
9
|
private uploadedFiles;
|
|
10
10
|
private uncachedFileStorages;
|
|
11
11
|
constructor(logger: Logger, options: LLMInstanceOptions[LLMProviders.GoogleGenerativeAI]);
|
|
12
|
-
|
|
12
|
+
get instance(): GoogleGenAI;
|
|
13
13
|
uploadFile(fileOptions: LLMUploadFileOptions): Promise<LLMUploadFileResult>;
|
|
14
14
|
deleteFile(fileId: string): Promise<void>;
|
|
15
15
|
createFileStorage(options: LLMCreateFileStorageOptions<LLMProviders.GoogleGenerativeAI>): Promise<LLMCreateFileStorageResult>;
|
package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GoogleGenerativeAIAssistance.service.js","sourceRoot":"","sources":["../../../../src/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.ts"],"names":[],"mappings":";;;AACA,+BAAoC;AACpC,yCAKuB;AACvB,+DAgB+B;AAC/B,yCAAkD;AAClD,4GAAqG;AACrG,wGAAoG;AACpG,8GAAuG;AAEvG,MAAa,mCACX,SAAQ,+BAAqD;IAC7D,SAAS,GAAuB,IAAI,CAAC;IAE7B,aAAa,GAA+B,IAAI,GAAG,EAAE,CAAC;IAEtD,YAAY,GAAsB,IAAI,GAAG,EAAE,CAAC;IAE5C,aAAa,GAAiC,IAAI,GAAG,EAAE,CAAC;IAExD,oBAAoB,GAAmC,IAAI,GAAG,EAAE,CAAC;IAEzE,YACE,MAAc,EACd,OAA4D;QAE5D,KAAK,CAAC,kCAAY,CAAC,kBAAkB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"GoogleGenerativeAIAssistance.service.js","sourceRoot":"","sources":["../../../../src/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.ts"],"names":[],"mappings":";;;AACA,+BAAoC;AACpC,yCAKuB;AACvB,+DAgB+B;AAC/B,yCAAkD;AAClD,4GAAqG;AACrG,wGAAoG;AACpG,8GAAuG;AAEvG,MAAa,mCACX,SAAQ,+BAAqD;IAC7D,SAAS,GAAuB,IAAI,CAAC;IAE7B,aAAa,GAA+B,IAAI,GAAG,EAAE,CAAC;IAEtD,YAAY,GAAsB,IAAI,GAAG,EAAE,CAAC;IAE5C,aAAa,GAAiC,IAAI,GAAG,EAAE,CAAC;IAExD,oBAAoB,GAAmC,IAAI,GAAG,EAAE,CAAC;IAEzE,YACE,MAAc,EACd,OAA4D;QAE5D,KAAK,CAAC,kCAAY,CAAC,kBAAkB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,QAAQ;QACV,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,mBAAW,CAAC;gBAC/B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;aAC5B,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,WAAiC;QAChD,IAAI,CAAC;YACH,MAAM,EACJ,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,WAAW,GACZ,GAAG,WAAW,CAAC;YAEhB,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAElD,IAAI,YAAY,EAAE,CAAC;gBACjB,OAAO,YAAY,CAAC;YACtB,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;gBACpD,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE;oBACN,QAAQ;oBACR,WAAW,EAAE,IAAI;oBACjB,WAAW;iBACZ;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;YACzD,CAAC;YAED,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;YACxD,CAAC;YAED,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;gBACvB,MAAM,YAAY,CAAC,KAAK,CAAC;YAC3B,CAAC;YAED,MAAM,YAAY,GAAG;gBACnB,IAAI;gBACJ,QAAQ;gBACR,MAAM,EAAE,YAAY,CAAC,IAAI;gBACzB,IAAI,EAAE,YAAY,CAAC,GAAG;aACvB,CAAC;YAEF,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;YAE3C,OAAO,YAAY,CAAC;QACtB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM;iBACR,KAAK,CAAC,YAAY,CAAC;iBACnB,KAAK,CAAC,sBAAsB,EAAE;gBAC7B,KAAK;gBACL,IAAI,EAAE,WAAW;aAClB,CAAC,CAAC;YAEL,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CACd,MAAc;QAEd,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAElC,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;YAC/B,IAAI,EAAE,MAAM;SACb,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,OAAqE;QAErE,MAAM,EACJ,aAAa,EACb,KAAK,EACL,YAAY,EACZ,WAAW,GACZ,GAAG,OAAO,CAAC;QAEZ,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,oDAAwB,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;YAEvE,MAAM,aAAa,GAAG,oDAAwB;iBAC3C,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAEnC,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAErD,IAAI,UAAU,GAAG,uDAAwB,EAAE,CAAC;gBAC1C;;;mBAGG;gBACH,MAAM,SAAS,GAAG,IAAA,SAAM,GAAE,CAAC;gBAC3B,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;gBAExD,IAAI,CAAC,MAAM;qBACR,KAAK,CAAC,mBAAmB,CAAC;qBAC1B,IAAI,CAAC,0DAA0D,EAAE;oBAChE,SAAS;oBACT,UAAU;oBACV,WAAW,EAAE,uDAAwB;iBACtC,CAAC,CAAC;gBAEL,OAAO;oBACL,SAAS;iBACV,CAAC;YACJ,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;gBACpD,KAAK,EAAE,KAAK,CAAC,IAAI;gBACjB,MAAM,EAAE;oBACN,QAAQ,EAAE;wBACR;4BACE,IAAI,EAAE,qDAAuB,CAAC,IAAI;4BAClC,KAAK;yBACN;qBACF;oBACD,iBAAiB,EAAE,YAAY;oBAC/B,GAAG,EAAE,IAAI;oBACT,WAAW;iBACZ;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;YACxD,CAAC;YAED,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACnD,CAAC;YAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;YAEtD,OAAO;gBACL,SAAS,EAAE,WAAW,CAAC,IAAI;aAC5B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM;iBACR,KAAK,CAAC,mBAAmB,CAAC;iBAC1B,KAAK,CAAC,6BAA6B,EAAE;gBACpC,KAAK;gBACL,aAAa;gBACb,KAAK;aACN,CAAC,CAAC;YAEL,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,aAAqB;QAErB,IAAI,aAAa,KAAK,EAAE,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAE5D,IAAI,aAAa,EAAE,CAAC;YAClB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YACzC,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;gBAChC,IAAI,EAAE,aAAa;aACpB,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,UAAU,CACd,OAA8D;QAE9D,IAAI,CAAC;YACH,MAAM,EACJ,SAAS,EACT,KAAK,EACL,YAAY,EACZ,OAAO,EAAE,eAAe,EACxB,KAAK,EACL,WAAW,GACZ,GAAG,OAAO,CAAC;YAEZ,MAAM,aAAa,GAAG,SAAS;gBAC7B,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC;gBACnC,CAAC,CAAC,SAAS,CAAC;YAEd,MAAM,aAAa,GAAG,SAAS;gBAC7B,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC;gBAC1C,CAAC,CAAC,SAAS,CAAC;YAEd,MAAM,OAAO,GAAc,eAAe;gBACxC,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CACjB,eAAe,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAC/B,oDAAwB,CAAC,UAAU,CACjC,OAAO,EACP,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,MAAM,CACZ,CACF,CAAC,CACH;gBACD,CAAC,CAAC,EAAE,CAAC;YAEP,IAAI,CAAC,aAAa,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChD,MAAM,SAAS,GAAG,oDAAwB,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBAEnE,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,qDAAuB,CAAC,IAAI;oBAClC,KAAK,EAAE,SAAS;iBACjB,CAAC,CAAC;YACL,CAAC;YAED;;eAEG;YACH,IAAI,CAAC,aAAa,IAAI,aAAa,EAAE,CAAC;gBACpC,MAAM,SAAS,GAAG,oDAAwB,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;gBAE3E,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,qDAAuB,CAAC,IAAI;oBAClC,KAAK,EAAE,SAAS;iBACjB,CAAC,CAAC;YACL,CAAC;YAED,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC7C,KAAK,EAAE,KAAK,CAAC,IAAI;gBACjB,OAAO;gBACP,MAAM,EAAE;oBACN,iBAAiB,EAAE,YAAY;oBAC/B,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW;oBACrC,WAAW;oBACX,GAAG,CAAC,aAAa,IAAI,EAAE,aAAa,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC;iBAC5D;aACF,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,IAAA,SAAM,GAAE,CAAC;YAExB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAE3C,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QACrC,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM;iBACR,KAAK,CAAC,YAAY,CAAC;iBACnB,KAAK,CAAC,qBAAqB,EAAE;gBAC5B,KAAK;gBACL,OAAO;aACR,CAAC,CAAC;YAEL,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,UAAU,CACR,MAAc;QAEd,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEjC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,eAAe,CACb,OAAmE;QAEnE,MAAM,EACJ,WAAW,GACZ,GAAG,OAAO,CAAC;QAEZ,IAAI,CAAC;YACH,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAChD,CAAC;YAED,wEAAwE;YACxE,OAAO,OAAO,CAAC,OAAO,CAAC;gBACrB,WAAW,EAAE,EAAE;aAChB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM;iBACR,KAAK,CAAC,iBAAiB,CAAC;iBACxB,KAAK,CAAC,0BAA0B,EAAE;gBACjC,KAAK;gBACL,OAAO;aACR,CAAC,CAAC;YAEL,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,eAAe;QACb,wEAAwE;QACxE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,OAA6B;QAE7B,IAAI,CAAC;YACH,MAAM,EACJ,OAAO,EACP,MAAM,EACN,WAAW,GACZ,GAAG,OAAO,CAAC;YAEZ,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAElD,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;YAC5C,CAAC;YAED,MAAM,cAAc,GAAG,MAAM,oDAAwB,CAAC,UAAU,CAC9D,OAAO,EACP,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,MAAM,CACZ,CAAC;YAEF,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;gBAC1B,OAAO;oBACL,IAAI,EAAE,EAAE;iBACT,CAAC;YACJ,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC;gBACjD,OAAO,EAAE,cAAc,CAAC,KAAK;gBAC7B,MAAM,EAAE;oBACN,WAAW;iBACZ;aACF,CAAC,CAAC;YAEH,OAAO;gBACL,IAAI,EAAE,YAAY,CAAC,IAAI,IAAI,EAAE;aAC9B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM;iBACR,KAAK,CAAC,cAAc,CAAC;iBACrB,KAAK,CAAC,yBAAyB,EAAE;gBAChC,KAAK;gBACL,OAAO;aACR,CAAC,CAAC;YAEL,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,WAAW,CACf,QAAgC,EAChC,KAAgD;QAEhD,MAAM,aAAa,GAAG,oDAAwB;aAC3C,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEnC,OAAO,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;CACF;AA1XD,kFA0XC"}
|
package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAICompletion.service.d.ts
CHANGED
|
@@ -5,6 +5,6 @@ import { LLMCompletionService } from '../../../services';
|
|
|
5
5
|
export declare class GoogleGenerativeAICompletionService extends LLMCompletionService<LLMProviders.GoogleGenerativeAI> {
|
|
6
6
|
#private;
|
|
7
7
|
constructor(logger: Logger, options: LLMInstanceOptions[LLMProviders.GoogleGenerativeAI]);
|
|
8
|
-
|
|
8
|
+
get instance(): GoogleGenAI;
|
|
9
9
|
sendMessage(options: LLMSendMessageOptions<typeof this.provider>): Promise<LLMCompletionResult>;
|
|
10
10
|
}
|
package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAICompletion.service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GoogleGenerativeAICompletion.service.js","sourceRoot":"","sources":["../../../../src/providers/GoogleGenerativeAI/services/GoogleGenerativeAICompletion.service.ts"],"names":[],"mappings":";;;AACA,yCAA4C;AAC5C,+DAK+B;AAC/B,yCAEoB;AACpB,wGAAoG;AAEpG,MAAa,mCACX,SAAQ,+BAAqD;IAC7D,SAAS,GAAuB,IAAI,CAAC;IAErC,YACE,MAAc,EACd,OAA4D;QAE5D,KAAK,CAAC,kCAAY,CAAC,kBAAkB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"GoogleGenerativeAICompletion.service.js","sourceRoot":"","sources":["../../../../src/providers/GoogleGenerativeAI/services/GoogleGenerativeAICompletion.service.ts"],"names":[],"mappings":";;;AACA,yCAA4C;AAC5C,+DAK+B;AAC/B,yCAEoB;AACpB,wGAAoG;AAEpG,MAAa,mCACX,SAAQ,+BAAqD;IAC7D,SAAS,GAAuB,IAAI,CAAC;IAErC,YACE,MAAc,EACd,OAA4D;QAE5D,KAAK,CAAC,kCAAY,CAAC,kBAAkB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,QAAQ;QACV,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,mBAAW,CAAC;gBAC/B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;aAC5B,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,WAAW,CACf,OAAoD;QAEpD,IAAI,CAAC;YACH,MAAM,EACJ,KAAK,EACL,OAAO,EACP,OAAO,GAAG,EAAE,EACZ,YAAY,EACZ,WAAW,GACZ,GAAG,OAAO,CAAC;YAEZ,MAAM,aAAa,GAAG,oDAAwB;iBAC3C,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAEnC,MAAM,gBAAgB,GAAG,MAAM,oDAAwB,CAAC,wBAAwB,CAAC;gBAC/E,OAAO;gBACP,OAAO;gBACP,KAAK;gBACL,aAAa;gBACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,CACvD,oDAAwB,CAAC,oBAAoB,CAAC;gBAC5C,KAAK;gBACL,QAAQ,EAAE,gBAAgB;gBAC1B,YAAY;gBACZ,WAAW;aACZ,CAAC,CACH,CAAC;YAEF,OAAO;gBACL,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE;aACxB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM;iBACR,KAAK,CAAC,aAAa,CAAC;iBACpB,KAAK,CAAC,uBAAuB,EAAE;gBAC9B,KAAK;gBACL,OAAO;aACR,CAAC,CAAC;YAEL,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;CACF;AApED,kFAoEC"}
|
package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAISpeechToText.service.d.ts
CHANGED
|
@@ -5,6 +5,6 @@ import { LLMSpeechToTextService } from '../../../services';
|
|
|
5
5
|
export declare class GoogleGenerativeAISpeechToTextService extends LLMSpeechToTextService<LLMProviders.GoogleGenerativeAI> {
|
|
6
6
|
#private;
|
|
7
7
|
constructor(logger: Logger, options: LLMInstanceOptions[LLMProviders.GoogleGenerativeAI]);
|
|
8
|
-
|
|
8
|
+
get instance(): GoogleGenAI;
|
|
9
9
|
transcribe(options: LLMTranscribeOptions<typeof this.provider>): Promise<LLMTranscribeResult>;
|
|
10
10
|
}
|
package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAISpeechToText.service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GoogleGenerativeAISpeechToText.service.js","sourceRoot":"","sources":["../../../../src/providers/GoogleGenerativeAI/services/GoogleGenerativeAISpeechToText.service.ts"],"names":[],"mappings":";;;;;;AAAA,2BAA8B;AAE9B,yCAIuB;AACvB,+DAK+B;AAC/B,yCAEoB;AACpB,wGAAoG;AACpG,4DAA8B;AAE9B,MAAa,qCACX,SAAQ,iCAAuD;IAC/D,SAAS,GAAuB,IAAI,CAAC;IAErC,YACE,MAAc,EACd,OAA4D;QAE5D,KAAK,CAAC,kCAAY,CAAC,kBAAkB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"GoogleGenerativeAISpeechToText.service.js","sourceRoot":"","sources":["../../../../src/providers/GoogleGenerativeAI/services/GoogleGenerativeAISpeechToText.service.ts"],"names":[],"mappings":";;;;;;AAAA,2BAA8B;AAE9B,yCAIuB;AACvB,+DAK+B;AAC/B,yCAEoB;AACpB,wGAAoG;AACpG,4DAA8B;AAE9B,MAAa,qCACX,SAAQ,iCAAuD;IAC/D,SAAS,GAAuB,IAAI,CAAC;IAErC,YACE,MAAc,EACd,OAA4D;QAE5D,KAAK,CAAC,kCAAY,CAAC,kBAAkB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,QAAQ;QACV,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,mBAAW,CAAC;gBAC/B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;aAC5B,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,UAAU,CACd,OAAmD;QAEnD,IAAI,CAAC;YACH,MAAM,EACJ,KAAK,EACL,WAAW,EACX,QAAQ,EACR,WAAW,GACZ,GAAG,OAAO,CAAC;YAEZ,MAAM,EACJ,WAAW,EACX,kBAAkB,GACnB,GAAG,oDAAwB,CAAC,gBAAgB,CAAC;YAE9C,MAAM,QAAQ,GAAG,IAAA,aAAQ,EAAC,WAAW,CAAC,CAAC,IAAI,CAAC;YAE5C,IAAI,QAAQ,GAAG,WAAW,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CACb,kCAAkC,WAAW,QAAQ,CACtD,CAAC;YACJ,CAAC;YAED,MAAM,gBAAgB,GAAG,QAAQ,IAAI,oBAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAE9D,IAAI,CAAC,gBAAgB,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,gBAAuB,CAAC,EAAE,CAAC;gBAC/E,MAAM,IAAI,KAAK,CACb,gCAAgC,gBAAgB,0BAA0B,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC1G,CAAC;YACJ,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;gBACjD,IAAI,EAAE,WAAW;gBACjB,MAAM,EAAE;oBACN,QAAQ;oBACR,WAAW;iBACZ;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;gBACxD,MAAM,IAAI,KAAK,CAAC,0CAA0C,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACzF,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC;gBAC1D,KAAK,EAAE,KAAK,CAAC,IAAI;gBACjB,QAAQ,EAAE,IAAA,yBAAiB,EAAC;oBAC1B,IAAA,yBAAiB,EAAC,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,QAAQ,CAAC;oBACpD,oDAAwB,CAAC,sBAAsB;iBAChD,CAAC;gBACF,MAAM,EAAE;oBACN,GAAG,KAAK,CAAC,MAAM;oBACf,WAAW;iBACZ;aACF,CAAC,CAAC;YAEH,OAAO;gBACL,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,EAAE;aAC1B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM;iBACR,KAAK,CAAC,YAAY,CAAC;iBACnB,KAAK,CAAC,0BAA0B,EAAE;gBACjC,KAAK;gBACL,OAAO;aACR,CAAC,CAAC;YAEL,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;CACF;AA3FD,sFA2FC"}
|
package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAITextToSpeech.service.d.ts
CHANGED
|
@@ -5,6 +5,6 @@ import { LLMTextToSpeechService } from '../../../services';
|
|
|
5
5
|
export declare class GoogleGenerativeAITextToSpeechService extends LLMTextToSpeechService<LLMProviders.GoogleGenerativeAI> {
|
|
6
6
|
#private;
|
|
7
7
|
constructor(logger: Logger, options: LLMInstanceOptions[LLMProviders.GoogleGenerativeAI]);
|
|
8
|
-
|
|
8
|
+
get instance(): GoogleGenAI;
|
|
9
9
|
createSpeech(options: LLMCreateSpeechOptions<typeof this.provider>): Promise<LLMCreateSpeechResult>;
|
|
10
10
|
}
|
package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAITextToSpeech.service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GoogleGenerativeAITextToSpeech.service.js","sourceRoot":"","sources":["../../../../src/providers/GoogleGenerativeAI/services/GoogleGenerativeAITextToSpeech.service.ts"],"names":[],"mappings":";;;AACA,yCAA4C;AAC5C,+DAM+B;AAC/B,yCAAoD;AAEpD,MAAa,qCACX,SAAQ,iCAAuD;IAC/D,SAAS,GAAuB,IAAI,CAAC;IAErC,YACE,MAAc,EACd,OAA4D;QAE5D,KAAK,CAAC,kCAAY,CAAC,kBAAkB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"GoogleGenerativeAITextToSpeech.service.js","sourceRoot":"","sources":["../../../../src/providers/GoogleGenerativeAI/services/GoogleGenerativeAITextToSpeech.service.ts"],"names":[],"mappings":";;;AACA,yCAA4C;AAC5C,+DAM+B;AAC/B,yCAAoD;AAEpD,MAAa,qCACX,SAAQ,iCAAuD;IAC/D,SAAS,GAAuB,IAAI,CAAC;IAErC,YACE,MAAc,EACd,OAA4D;QAE5D,KAAK,CAAC,kCAAY,CAAC,kBAAkB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,QAAQ;QACV,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,mBAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,OAAqD;QAErD,IAAI,CAAC;YACH,MAAM,EACJ,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,aAAa,EACb,WAAW,GACZ,GAAG,OAAO,CAAC;YAEZ,MAAM,QAAQ,GAAG,GAAG,YAAY,IAAI,EAAE,gBAAgB,IAAI,eAAe,CAAC;YAE1E,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC;gBAC/D,KAAK,EAAE,KAAK,CAAC,IAAI;gBACjB,QAAQ;gBACR,MAAM,EAAE;oBACN,GAAG,KAAK,CAAC,MAAM;oBACf,kBAAkB,EAAE,CAAC,OAAO,CAAC;oBAC7B,YAAY,EAAE,aAAa,EAAE,YAAY;oBACzC,WAAW;iBACZ;aACF,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,aAAa,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC;YAElF,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;YAC3D,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAEhD,OAAO;gBACL,KAAK,EAAE,WAAW;gBAClB,QAAQ,EAAE,4CAAsB,CAAC,SAAS;aAC3C,CAAC;QAEJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM;iBACR,KAAK,CAAC,cAAc,CAAC;iBACrB,KAAK,CAAC,uBAAuB,EAAE;gBAC9B,KAAK;gBACL,OAAO;aACR,CAAC,CAAC;YAEL,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;CACF;AApED,sFAoEC"}
|
|
@@ -6,7 +6,7 @@ export declare class OpenAIAssistanceService extends LLMAssistanceService<LLMPro
|
|
|
6
6
|
#private;
|
|
7
7
|
private uploadedFiles;
|
|
8
8
|
constructor(logger: Logger, options: LLMInstanceOptions[LLMProviders.OpenAI]);
|
|
9
|
-
|
|
9
|
+
get instance(): OpenAI;
|
|
10
10
|
uploadFile(fileOptions: LLMUploadFileOptions): Promise<LLMUploadFileResult>;
|
|
11
11
|
deleteFile(fileId: string): Promise<void>;
|
|
12
12
|
createFileStorage(options: LLMCreateFileStorageOptions<LLMProviders.OpenAI>): Promise<LLMCreateFileStorageResult>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAIAssistance.service.js","sourceRoot":"","sources":["../../../../src/providers/OpenAI/services/OpenAIAssistance.service.ts"],"names":[],"mappings":";;;AAAA,2BAAsC;AAEtC,mCAAgC;AAChC,+DAgB+B;AAC/B,yCAAkD;AAClD,wEAAiE;AAEjE,oEAAgE;AAEhE,MAAa,uBACX,SAAQ,+BAAyC;IACjD,SAAS,GAAkB,IAAI,CAAC;IAExB,aAAa,GAAwB,IAAI,GAAG,EAAE,CAAC;IAEvD,YACE,MAAc,EACd,OAAgD;QAEhD,KAAK,CAAC,kCAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"OpenAIAssistance.service.js","sourceRoot":"","sources":["../../../../src/providers/OpenAI/services/OpenAIAssistance.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,6 @@ import { LLMCompletionService } from '../../../services';
|
|
|
5
5
|
export declare class OpenAICompletionService extends LLMCompletionService<LLMProviders.OpenAI> {
|
|
6
6
|
#private;
|
|
7
7
|
constructor(logger: Logger, options: LLMInstanceOptions[LLMProviders.OpenAI]);
|
|
8
|
-
|
|
8
|
+
get instance(): OpenAI;
|
|
9
9
|
sendMessage(options: LLMSendMessageOptions<typeof this.provider>): Promise<LLMCompletionResult>;
|
|
10
10
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAICompletion.service.js","sourceRoot":"","sources":["../../../../src/providers/OpenAI/services/OpenAICompletion.service.ts"],"names":[],"mappings":";;;AACA,mCAAgC;AAChC,+DAK+B;AAC/B,yCAEoB;AACpB,oEAAgE;AAEhE,MAAa,uBACX,SAAQ,+BAAyC;IACjD,SAAS,GAAkB,IAAI,CAAC;IAEhC,YACE,MAAc,EACd,OAAgD;QAEhD,KAAK,CAAC,kCAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"OpenAICompletion.service.js","sourceRoot":"","sources":["../../../../src/providers/OpenAI/services/OpenAICompletion.service.ts"],"names":[],"mappings":";;;AACA,mCAAgC;AAChC,+DAK+B;AAC/B,yCAEoB;AACpB,oEAAgE;AAEhE,MAAa,uBACX,SAAQ,+BAAyC;IACjD,SAAS,GAAkB,IAAI,CAAC;IAEhC,YACE,MAAc,EACd,OAAgD;QAEhD,KAAK,CAAC,kCAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,QAAQ;QACV,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,eAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,WAAW,CACf,OAAoD;QAEpD,IAAI,CAAC;YACH,MAAM,EACJ,KAAK,EACL,OAAO,EACP,OAAO,GAAG,EAAE,EACZ,WAAW,GACZ,GAAG,OAAO,CAAC;YAEZ,MAAM,aAAa,GAAG,4BAAY,CAAC,gBAAgB,EAAE,CAAC;YAEtD,MAAM,gBAAgB,GAAG,MAAM,4BAAY,CAAC,wBAAwB,CAAC;gBACnE,OAAO;gBACP,OAAO;gBACP,KAAK;gBACL,aAAa;gBACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC,CAAC;YAEH,MAAM,0BAA0B,GAAG,4BAAY;iBAC5C,6BAA6B,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAEhE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;gBAC7D,KAAK,EAAE,KAAK,CAAC,IAAI;gBACjB,QAAQ,EAAE,0BAA0B;gBACpC,CAAC,EAAE,CAAC;gBACJ,GAAG,KAAK,CAAC,MAAM;aAChB,EAAE;gBACD,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;YAEH,OAAO;gBACL,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;aACnD,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM;iBACR,KAAK,CAAC,aAAa,CAAC;iBACpB,KAAK,CAAC,uBAAuB,EAAE;gBAC9B,KAAK;gBACL,OAAO;aACR,CAAC,CAAC;YAEL,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;CACF;AAnED,0DAmEC"}
|
|
@@ -5,6 +5,6 @@ import { LLMSpeechToTextService } from '../../../services';
|
|
|
5
5
|
export declare class OpenAISpeechToTextService extends LLMSpeechToTextService<LLMProviders.OpenAI> {
|
|
6
6
|
#private;
|
|
7
7
|
constructor(logger: Logger, options: LLMInstanceOptions[LLMProviders.OpenAI]);
|
|
8
|
-
|
|
8
|
+
get instance(): OpenAI;
|
|
9
9
|
transcribe(options: LLMTranscribeOptions<typeof this.provider>): Promise<LLMTranscribeResult>;
|
|
10
10
|
}
|
|
@@ -10,8 +10,6 @@ const LLMService_typedefs_1 = require("../../../LLMService.typedefs");
|
|
|
10
10
|
const services_1 = require("../../../services");
|
|
11
11
|
const OpenAI_entity_1 = require("../../../providers/OpenAI/OpenAI.entity");
|
|
12
12
|
const mime_types_1 = __importDefault(require("mime-types"));
|
|
13
|
-
const stream_1 = require("stream");
|
|
14
|
-
const promises_1 = require("fs/promises");
|
|
15
13
|
class OpenAISpeechToTextService extends services_1.LLMSpeechToTextService {
|
|
16
14
|
#instance = null;
|
|
17
15
|
constructor(logger, options) {
|
|
@@ -27,24 +25,18 @@ class OpenAISpeechToTextService extends services_1.LLMSpeechToTextService {
|
|
|
27
25
|
try {
|
|
28
26
|
const { model, pathToAudio, mimeType, abortSignal, } = options;
|
|
29
27
|
const { maxFileSize, supportedMimeTypes, } = OpenAI_entity_1.OpenAIEntity.transcribeLimits;
|
|
30
|
-
console.log(`Transcribing audio file: ${pathToAudio}`);
|
|
31
28
|
const fileSize = (0, fs_1.statSync)(pathToAudio).size;
|
|
32
|
-
console.log(`File size: ${fileSize} bytes`);
|
|
33
29
|
if (fileSize > maxFileSize) {
|
|
34
30
|
throw new Error(`File size exceeds the limit of ${maxFileSize} bytes`);
|
|
35
31
|
}
|
|
36
32
|
const resolvedMimeType = mimeType ?? mime_types_1.default.lookup(pathToAudio);
|
|
37
|
-
console.log(`Resolved MIME type: ${resolvedMimeType}`);
|
|
38
33
|
if (!resolvedMimeType || !supportedMimeTypes.includes(resolvedMimeType)) {
|
|
39
34
|
throw new Error(`Unsupported audio file type: ${resolvedMimeType}. Supported types are: ${supportedMimeTypes.join(', ')}`);
|
|
40
35
|
}
|
|
41
|
-
|
|
42
|
-
const audioFileRS = await (0, promises_1.readFile)(pathToAudio);
|
|
43
|
-
const audioFile = stream_1.Readable.from(audioFileRS);
|
|
44
|
-
console.log(`Audio file stream created for: ${pathToAudio}`);
|
|
36
|
+
const audioFileStream = (0, fs_1.createReadStream)(pathToAudio, { signal: abortSignal });
|
|
45
37
|
const response = await this.instance.audio.transcriptions.create({
|
|
46
38
|
model: model.name,
|
|
47
|
-
file:
|
|
39
|
+
file: audioFileStream,
|
|
48
40
|
response_format: 'json',
|
|
49
41
|
temperature: model.config?.temperature,
|
|
50
42
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAISpeechToText.service.js","sourceRoot":"","sources":["../../../../src/providers/OpenAI/services/OpenAISpeechToText.service.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"OpenAISpeechToText.service.js","sourceRoot":"","sources":["../../../../src/providers/OpenAI/services/OpenAISpeechToText.service.ts"],"names":[],"mappings":";;;;;;AAAA,2BAAgD;AAEhD,mCAAgC;AAChC,+DAK+B;AAC/B,yCAAoD;AACpD,oEAAgE;AAChE,4DAA8B;AAE9B,MAAa,yBACX,SAAQ,iCAA2C;IACnD,SAAS,GAAkB,IAAI,CAAC;IAEhC,YACE,MAAc,EACd,OAAgD;QAEhD,KAAK,CAAC,kCAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,QAAQ;QACV,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,eAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,UAAU,CACd,OAAmD;QAEnD,IAAI,CAAC;YACH,MAAM,EACJ,KAAK,EACL,WAAW,EACX,QAAQ,EACR,WAAW,GACZ,GAAG,OAAO,CAAC;YAEZ,MAAM,EACJ,WAAW,EACX,kBAAkB,GACnB,GAAG,4BAAY,CAAC,gBAAgB,CAAC;YAElC,MAAM,QAAQ,GAAG,IAAA,aAAQ,EAAC,WAAW,CAAC,CAAC,IAAI,CAAC;YAE5C,IAAI,QAAQ,GAAG,WAAW,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CACb,kCAAkC,WAAW,QAAQ,CACtD,CAAC;YACJ,CAAC;YAED,MAAM,gBAAgB,GAAG,QAAQ,IAAI,oBAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAE9D,IAAI,CAAC,gBAAgB,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,gBAAuB,CAAC,EAAE,CAAC;gBAC/E,MAAM,IAAI,KAAK,CACb,gCAAgC,gBAAgB,0BAA0B,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC1G,CAAC;YACJ,CAAC;YAED,MAAM,eAAe,GAAG,IAAA,qBAAgB,EAAC,WAAW,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;YAE/E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC;gBAC/D,KAAK,EAAE,KAAK,CAAC,IAAI;gBACjB,IAAI,EAAE,eAAe;gBACrB,eAAe,EAAE,MAAM;gBACvB,WAAW,EAAE,KAAK,CAAC,MAAM,EAAE,WAAW;aACvC,EAAE;gBACD,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;YAEH,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;QACjC,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM;iBACR,KAAK,CAAC,YAAY,CAAC;iBACnB,KAAK,CAAC,0BAA0B,EAAE;gBACjC,KAAK;gBACL,OAAO;aACR,CAAC,CAAC;YAEL,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;CACF;AA1ED,8DA0EC"}
|
|
@@ -5,6 +5,6 @@ import { LLMTextToSpeechService } from '../../../services';
|
|
|
5
5
|
export declare class OpenAITextToSpeechService extends LLMTextToSpeechService<LLMProviders.OpenAI> {
|
|
6
6
|
#private;
|
|
7
7
|
constructor(logger: Logger, options: LLMInstanceOptions[LLMProviders.OpenAI]);
|
|
8
|
-
|
|
8
|
+
get instance(): OpenAI;
|
|
9
9
|
createSpeech(options: LLMCreateSpeechOptions<typeof this.provider>): Promise<LLMCreateSpeechResult>;
|
|
10
10
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAITextToSpeech.service.js","sourceRoot":"","sources":["../../../../src/providers/OpenAI/services/OpenAITextToSpeech.service.ts"],"names":[],"mappings":";;;AACA,mCAAgC;AAChC,+DAK+B;AAC/B,yCAAoD;AAEpD,MAAa,yBACX,SAAQ,iCAA2C;IACnD,SAAS,GAAkB,IAAI,CAAC;IAEhC,YACE,MAAc,EACd,OAAgD;QAEhD,KAAK,CAAC,kCAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"OpenAITextToSpeech.service.js","sourceRoot":"","sources":["../../../../src/providers/OpenAI/services/OpenAITextToSpeech.service.ts"],"names":[],"mappings":";;;AACA,mCAAgC;AAChC,+DAK+B;AAC/B,yCAAoD;AAEpD,MAAa,yBACX,SAAQ,iCAA2C;IACnD,SAAS,GAAkB,IAAI,CAAC;IAEhC,YACE,MAAc,EACd,OAAgD;QAEhD,KAAK,CAAC,kCAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,QAAQ;QACV,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,eAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,OAAqD;QAErD,IAAI,CAAC;YACH,MAAM,EACJ,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,aAAa,EACb,WAAW,GACZ,GAAG,OAAO,CAAC;YAEZ,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;gBAC5D,KAAK,EAAE,KAAK,CAAC,IAAI;gBACjB,KAAK,EAAE,IAAI;gBACX,YAAY;gBACZ,KAAK,EAAE,aAAa,EAAE,KAAK,IAAI,OAAO;gBACtC,eAAe,EAAE,aAAa,EAAE,eAAe;gBAC/C,KAAK,EAAE,aAAa,EAAE,KAAK;aAC5B,EAAE;gBACD,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;YAEH,MAAM,gBAAgB,GAAG,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC;YAC3D,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAElD,OAAO;gBACL,KAAK,EAAE,WAAW;gBAClB,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;aACpD,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM;iBACR,KAAK,CAAC,cAAc,CAAC;iBACrB,KAAK,CAAC,uBAAuB,EAAE;gBAC9B,KAAK;gBACL,OAAO;aACR,CAAC,CAAC;YAEL,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;CACF;AA5DD,8DA4DC"}
|
|
@@ -7,7 +7,7 @@ export declare abstract class LLMBaseService<Purpose extends LLMPurposes, Provid
|
|
|
7
7
|
logger: Logger;
|
|
8
8
|
options: LLMInstanceOptions[Provider];
|
|
9
9
|
constructor(provider: Provider, serviceName: string, purpose: Purpose, logger: Logger, options: LLMInstanceOptions[Provider]);
|
|
10
|
-
|
|
10
|
+
abstract get instance(): LLMInstances[Provider];
|
|
11
11
|
get models(): Partial<LLMProviderAvailableModels<Provider>>;
|
|
12
12
|
protected initLogger(): void;
|
|
13
13
|
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { LLMProviders, type LLMInstanceOptions, type LLMProviderAvailableModels, type LLMPurposes } from '../LLMService.typedefs';
|
|
2
|
+
import type { Logger } from '@mate-academy/core';
|
|
3
|
+
export declare const mockLogger: Logger;
|
|
4
|
+
type TestConfig = {
|
|
5
|
+
[Provider in LLMProviders]: {
|
|
6
|
+
provider: Provider;
|
|
7
|
+
availableModels: Partial<LLMProviderAvailableModels<Provider>>;
|
|
8
|
+
clientOptions: LLMInstanceOptions[Provider];
|
|
9
|
+
requireCredentials: () => void;
|
|
10
|
+
isEnabled: boolean;
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
export declare const resolveTestConfig: (purpose: LLMPurposes) => TestConfig;
|
|
14
|
+
export declare const hasText: (result: any) => result is {
|
|
15
|
+
text: string;
|
|
16
|
+
};
|
|
17
|
+
export declare const hasError: (result: any) => result is {
|
|
18
|
+
error: any;
|
|
19
|
+
};
|
|
20
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.hasError=exports.hasText=exports.resolveTestConfig=exports.mockLogger=void 0;const LLMService_typedefs_1=require("../LLMService.typedefs"),providers_1=require("../providers"),globals_1=require("@jest/globals");function hasOpenAICredentials(){return!!(process.env.OPENAI_SECRET_API_KEY&&"OPENAI_SECRET_API_KEY"!==process.env.OPENAI_SECRET_API_KEY&&process.env.OPENAI_SECRET_API_KEY.length>10)}function hasGoogleAICredentials(){return!!(process.env.GOOGLE_GENERATIVE_AI_API_KEY&&"GOOGLE_GENERATIVE_AI_API_KEY"!==process.env.GOOGLE_GENERATIVE_AI_API_KEY&&process.env.GOOGLE_GENERATIVE_AI_API_KEY.length>10)}function requireOpenAICredentials(){if(!hasOpenAICredentials())throw new Error("OpenAI credentials required for integration tests. Please set OPENAI_SECRET_API_KEY environment variable. You can find the proper keys in .env.file.sample")}function requireGoogleAICredentials(){if(!hasGoogleAICredentials())throw new Error("Google Generative AI credentials required for integration tests. Please set GOOGLE_GENERATIVE_AI_API_KEY environment variable. You can find the proper keys in .env.file.sample")}const ENABLE_LOGGING="true"===process.env.ENABLE_LOGGING;exports.mockLogger={info:globals_1.jest.fn((e,r)=>ENABLE_LOGGING&&console.log("[INFO]",e,r)),error:globals_1.jest.fn((e,r)=>ENABLE_LOGGING&&console.log("[ERROR]",e,r)),warn:globals_1.jest.fn((e,r)=>ENABLE_LOGGING&&console.log("[WARN]",e,r)),debug:globals_1.jest.fn((e,r)=>ENABLE_LOGGING&&console.log("[DEBUG]",e,r)),child:globals_1.jest.fn(()=>exports.mockLogger)};const resolveTestConfig=e=>({[LLMService_typedefs_1.LLMProviders.OpenAI]:{provider:LLMService_typedefs_1.LLMProviders.OpenAI,availableModels:providers_1.OPEN_AI_MODELS[e],clientOptions:{apiKey:process.env.OPENAI_SECRET_API_KEY,organization:process.env.OPENAI_ORG_ID,baseURL:process.env.OPENAI_BASE_URL},requireCredentials:requireOpenAICredentials,isEnabled:!0},[LLMService_typedefs_1.LLMProviders.GoogleGenerativeAI]:{provider:LLMService_typedefs_1.LLMProviders.GoogleGenerativeAI,availableModels:providers_1.GOOGLE_AI_MODELS[e],clientOptions:{apiKey:process.env.GOOGLE_GENERATIVE_AI_API_KEY},requireCredentials:requireGoogleAICredentials,isEnabled:!1}});exports.resolveTestConfig=resolveTestConfig;const hasText=e=>"text"in e;exports.hasText=hasText;const hasError=e=>"error"in e;exports.hasError=hasError;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/tests/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const globals_1=require("@jest/globals"),index_1=require("../../index"),helpers_1=require("../../tests/helpers"),fs_1=require("fs"),path_1=require("path"),os_1=require("os"),axios_1=__importDefault(require("axios")),testConfig=(0,helpers_1.resolveTestConfig)(index_1.LLMPurposes.Assistance);(0,globals_1.describe)("LLM Assistance Service",()=>{Object.values(testConfig).forEach(e=>{const{provider:t,availableModels:s,clientOptions:a,requireCredentials:o,isEnabled:i}=e;i?(0,globals_1.describe)(`${t} Provider`,()=>{let e;(0,globals_1.beforeAll)(()=>{o(),e=index_1.LLMServiceFactory.getAssistanceService(t,helpers_1.mockLogger,a)}),(0,globals_1.beforeEach)(()=>{globals_1.jest.clearAllMocks()}),(0,globals_1.describe)("Service Initialization",()=>{(0,globals_1.it)("should create assistance service instance",()=>{(0,globals_1.expect)(e).toBeDefined(),(0,globals_1.expect)(e.provider).toBe(t)})}),Object.values(s).forEach(a=>{const o=a.name;(0,globals_1.describe)(`Model: ${o}`,()=>{const a=s[o];(0,globals_1.describe)("File Management",()=>{(0,globals_1.it)("should upload a text file successfully",async()=>{const t="This is a test file content for LLM assistance integration tests.",s=(0,os_1.tmpdir)(),a=(0,path_1.join)(s,`test-file-${Date.now()}.txt`);(0,fs_1.writeFileSync)(a,t);const o={name:"test-file.txt",path:a,mimeType:index_1.LLMUploadFileMimeTypes.PLAIN_TEXT,content:t};let i;try{i=await e.uploadFile(o),(0,globals_1.expect)((0,helpers_1.hasError)(i)).toBe(!1),(0,helpers_1.hasError)(i)||((0,globals_1.expect)(i.fileId).toBeDefined(),(0,globals_1.expect)(i.name).toBe(o.name),(0,globals_1.expect)(i.mimeType).toBe(o.mimeType))}finally{(0,fs_1.unlinkSync)(a)}}),(0,globals_1.it)("should handle file upload errors gracefully",async()=>{const t={name:"invalid-file.txt",path:"",mimeType:index_1.LLMUploadFileMimeTypes.PLAIN_TEXT,content:"test content"},s=await e.uploadFile(t);(0,globals_1.expect)(s).toBeDefined(),(0,helpers_1.hasError)(s)&&(0,globals_1.expect)(s.error).toBeDefined()})}),(0,globals_1.describe)("File Storage Management",()=>{(0,globals_1.it)("should create file storage with uploaded files",async()=>{const t="Content for file storage test.",s=(0,os_1.tmpdir)(),o=(0,path_1.join)(s,`storage-test-file-${Date.now()}.txt`);(0,fs_1.writeFileSync)(o,t);const i={name:"storage-test-file.txt",path:o,mimeType:index_1.LLMUploadFileMimeTypes.PLAIN_TEXT,content:t};let r;try{if(r=await e.uploadFile(i),(0,helpers_1.hasError)(r))throw new Error('File upload failed in "should create file storage with uploaded files"');{const t=await e.createFileStorage({uploadedFiles:[r],model:a,instructions:"Test instructions with files"});(0,globals_1.expect)((0,helpers_1.hasError)(t)).toBe(!1),(0,helpers_1.hasError)(t)||(0,globals_1.expect)(t.storageId).toBeDefined()}}finally{(0,fs_1.unlinkSync)(o)}})}),(0,globals_1.describe)("Assistant Management",()=>{(0,globals_1.it)("should create an assistant successfully",async()=>{const t=await e.createFileStorage({uploadedFiles:[],model:a,instructions:"Base instructions for assistant"});if(!(0,helpers_1.hasError)(t)){const s=await e.createAssistant({model:a,instructions:"You are a helpful assistant for testing purposes.",storageIds:[t.storageId]});(0,globals_1.expect)((0,helpers_1.hasError)(s)).toBe(!1),(0,helpers_1.hasError)(s)||(0,globals_1.expect)(s.assistantId).toBeDefined()}}),(0,globals_1.it)("should create an assistant without storage",async()=>{const t=await e.createAssistant({model:a,instructions:"You are a simple assistant without file storage."});(0,globals_1.expect)((0,helpers_1.hasError)(t)).toBe(!1),(0,helpers_1.hasError)(t)||(0,globals_1.expect)(t.assistantId).toBeDefined()}),(0,globals_1.it)("should create an assistant with a custom name",async()=>{const t=await e.createAssistant({model:a,instructions:"You are a named assistant for testing.",name:"Test Assistant With Name"});(0,globals_1.expect)((0,helpers_1.hasError)(t)).toBe(!1),(0,helpers_1.hasError)(t)||(0,globals_1.expect)(t.assistantId).toBeDefined()})}),(0,globals_1.describe)("Chat Management",()=>{(0,globals_1.it)("should create a chat successfully",async()=>{const t=await e.createChat({model:a,instructions:"Chat instructions for testing"});(0,globals_1.expect)((0,helpers_1.hasError)(t)).toBe(!1),(0,helpers_1.hasError)(t)||(0,globals_1.expect)(t.chatId).toBeDefined()}),(0,globals_1.it)("should create a chat with file storage",async()=>{const t=await e.createFileStorage({uploadedFiles:[],model:a,instructions:"Storage for chat test"});if(!(0,helpers_1.hasError)(t)){const s=await e.createChat({model:a,instructions:"Chat with file storage",storageId:t.storageId});(0,globals_1.expect)((0,helpers_1.hasError)(s)).toBe(!1),(0,helpers_1.hasError)(s)||(0,globals_1.expect)(s.chatId).toBeDefined()}}),(0,globals_1.it)("should create a chat with structured message history",async()=>{const t=await e.createChat({model:a,instructions:"Chat with message history",history:[{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:"Hello, I am starting a conversation."}]},{role:index_1.LLMRoles.Assistant,content:[{type:index_1.LLMMessageContentType.TEXT,text:"Hello! How can I help you today?"}]}]});(0,helpers_1.hasError)(t)&&console.error("Chat creation with structured history failed:",t),(0,globals_1.expect)((0,helpers_1.hasError)(t)).toBe(!1),(0,helpers_1.hasError)(t)||(0,globals_1.expect)(t.chatId).toBeDefined()}),(0,globals_1.it)("should create a chat with mixed content in history",async()=>{const t=await e.createChat({model:a,instructions:"Chat with mixed content history",history:[{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:"Please analyze this image."},{type:index_1.LLMMessageContentType.IMAGE_URL,image_url:{url:"https://dev-media.mate.academy/llm-gateway-test-image.png"}}]},{role:index_1.LLMRoles.Assistant,content:[{type:index_1.LLMMessageContentType.TEXT,text:"I can see the image with learning content."}]}]});(0,helpers_1.hasError)(t)&&console.error("Chat creation with mixed content history failed:",t),(0,globals_1.expect)((0,helpers_1.hasError)(t)).toBe(!1),(0,helpers_1.hasError)(t)||(0,globals_1.expect)(t.chatId).toBeDefined()})}),(0,globals_1.describe)("Chat Assistance",()=>{(0,globals_1.it)("should assist in chat with simple message",async()=>{const t=await e.createAssistant({model:a,instructions:'You are a test assistant. Respond with "TEST SUCCESS" to any message. No other text is allowed.'});if(!(0,helpers_1.hasError)(t)){const s=await e.createChat({model:a,instructions:'You are a test assistant. Respond with "TEST SUCCESS" to any message. No other text is allowed.'});if(!(0,helpers_1.hasError)(s)){const a=await e.assistInChat({message:{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:'Hello, this is a test message. Please respond with "TEST SUCCESS".'}]},chatId:s.chatId,assistantId:t.assistantId});(0,globals_1.expect)((0,helpers_1.hasText)(a)).toBe(!0),(0,helpers_1.hasText)(a)&&(0,globals_1.expect)(a.text).toMatch(/test success/i)}}}),(0,globals_1.it)("should handle multiple messages in conversation",async()=>{const t=await e.createAssistant({model:a,instructions:"You are a helpful assistant. Keep responses concise."});if(!(0,helpers_1.hasError)(t)){const s=await e.createChat({model:a,instructions:"Conversational test chat"});if(!(0,helpers_1.hasError)(s)){const a=await e.assistInChat({message:{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:"My name is Test User."}]},chatId:s.chatId,assistantId:t.assistantId});if((0,globals_1.expect)((0,helpers_1.hasText)(a)).toBe(!0),(0,helpers_1.hasText)(a)){(0,globals_1.expect)(a.text).toBeDefined();const o=await e.assistInChat({message:{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:"What is my name?"}]},chatId:s.chatId,assistantId:t.assistantId});(0,globals_1.expect)((0,helpers_1.hasText)(o)).toBe(!0),(0,helpers_1.hasText)(o)&&(0,globals_1.expect)(o.text).toMatch(/test[\s]*user/i)}}}},12e4),(0,globals_1.it)("should assist with file-based context",async()=>{const t="ASSISTANT_TEST_123",s=`This file contains important information: The secret code is ${t}.`,o=(0,os_1.tmpdir)(),i=(0,path_1.join)(o,`context-file-${Date.now()}.txt`);(0,fs_1.writeFileSync)(i,s);const r={name:"context-file.txt",path:i,mimeType:index_1.LLMUploadFileMimeTypes.PLAIN_TEXT,content:s};let n;try{if(n=await e.uploadFile(r),(0,helpers_1.hasError)(n))throw new Error('File upload failed in "should assist with file-based context"');{const s=await e.createFileStorage({uploadedFiles:[n],model:a,instructions:"Use the uploaded files to answer questions"});if((0,helpers_1.hasError)(s))throw new Error('File storage creation failed in "should assist with file-based context"');{const o=await e.createAssistant({model:a,instructions:"You are an assistant that can access uploaded files. Use the file content to answer questions.",storageIds:[s.storageId]});if((0,helpers_1.hasError)(o))throw new Error('Assistant creation failed in "should assist with file-based context"');{const i=await e.createChat({model:a,instructions:"Chat with file context",storageId:s.storageId});if((0,helpers_1.hasError)(i))throw console.error("Chat creation error:",i),new Error(`Chat creation failed in "should assist with file-based context": ${JSON.stringify(i)}`);{const s=await e.assistInChat({message:{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:"What is the secret code mentioned in the uploaded file?"}]},chatId:i.chatId,assistantId:o.assistantId});(0,globals_1.expect)((0,helpers_1.hasText)(s)).toBe(!0),(0,helpers_1.hasText)(s)&&(0,globals_1.expect)(s.text).toMatch(new RegExp(t,"i"))}}}}}finally{(0,fs_1.unlinkSync)(i)}},12e4),t!==index_1.LLMProviders.OpenAI&&(0,globals_1.it)("should handle attachments in assistance messages",async()=>{const t=Math.floor(1e3*Math.random()),s=`Test attachment: ATTACHMENT_CONTENT_TEST_${t}`,o=(0,os_1.tmpdir)(),i=(0,path_1.join)(o,`attachment-test-${Date.now()}.txt`);(0,fs_1.writeFileSync)(i,s);const r={name:"attachment-test.txt",path:i,mimeType:index_1.LLMUploadFileMimeTypes.PLAIN_TEXT,content:s};let n;try{if(n=await e.uploadFile(r),(0,helpers_1.hasError)(n))throw new Error('File upload failed in "should handle attachments in assistance messages"');{const s=await e.createAssistant({model:a,instructions:"You can process file attachments. Read the content and respond accordingly."});if((0,helpers_1.hasError)(s))throw new Error('Assistant creation failed in "should handle attachments in assistance messages"');{const o=await e.createChat({model:a,instructions:"Chat with attachment capabilities"});if((0,helpers_1.hasError)(o))throw console.error("Chat creation error:",o),new Error(`Chat creation failed in "should handle attachments in assistance messages": ${JSON.stringify(o)}`);{const a=await e.assistInChat({message:{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:"Please read the attached file and tell me what test content it contains. Your response should include number in the attachment."}],attachments:[n]},chatId:o.chatId,assistantId:s.assistantId});(0,globals_1.expect)((0,helpers_1.hasText)(a)).toBe(!0),(0,helpers_1.hasText)(a)&&(0,globals_1.expect)(a.text).toMatch(new RegExp(t.toString(),"i"))}}}}finally{(0,fs_1.unlinkSync)(i)}},12e4),t===index_1.LLMProviders.OpenAI&&(0,globals_1.it)("should assist in chat with image file",async()=>{const t=await axios_1.default.get("https://dev-media.mate.academy/llm-gateway-test-image.png",{responseType:"arraybuffer"}),s=(0,os_1.tmpdir)(),o=(0,path_1.join)(s,`image-test-${Date.now()}.png`);(0,fs_1.writeFileSync)(o,t.data);const i={name:"image-test.png",path:o,mimeType:index_1.LLMUploadFileMimeTypes.IMAGE_PNG};let r;try{if(r=await e.uploadFile(i),(0,helpers_1.hasError)(r))throw new Error('File upload failed in "should assist in chat with image file"');{const t=await e.createAssistant({model:a,instructions:"You can analyze images. Respond with text written in the image."});if((0,helpers_1.hasError)(t))throw new Error('Assistant creation failed in "should assist in chat with image file"');{const s=await e.createChat({model:a,instructions:"Chat with image analysis capabilities. Assist with image content. Respond with text from the image.",files:[r]});if((0,helpers_1.hasError)(s))throw new Error(`Chat creation failed in "should assist in chat with image file": ${JSON.stringify(s)}`);{const a=await e.assistInChat({message:{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:"What text do you see in the image?"}]},chatId:s.chatId,assistantId:t.assistantId});(0,globals_1.expect)((0,helpers_1.hasText)(a)).toBe(!0),(0,helpers_1.hasText)(a)&&(0,globals_1.expect)(a.text).toMatch(/learn/i)}}}}finally{(0,fs_1.unlinkSync)(o)}})}),(0,globals_1.describe)("Error Handling",()=>{(0,globals_1.it)("should handle invalid chat ID gracefully",async()=>{const t=await e.createAssistant({model:a,instructions:"Test assistant"});if((0,helpers_1.hasError)(t))throw new Error("Assistant creation failed");{const s=await e.assistInChat({message:{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:"Test message"}]},chatId:"invalid-chat-id",assistantId:t.assistantId});(0,globals_1.expect)((0,helpers_1.hasError)(s)).toBe(!0)}}),t===index_1.LLMProviders.OpenAI&&(0,globals_1.it)("should handle invalid assistant ID gracefully",async()=>{const t=await e.createChat({model:a,instructions:"Test chat"});if((0,helpers_1.hasError)(t))throw new Error("Chat creation failed");{const s=await e.assistInChat({message:{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:"Test message"}]},chatId:t.chatId,assistantId:"invalid-assistant-id"});(0,globals_1.expect)((0,helpers_1.hasError)(s)).toBe(!0)}})}),(0,globals_1.describe)("Abort signal handling",()=>{let t,s;(0,globals_1.beforeEach)(()=>{t=new AbortController,s=t.signal}),(0,globals_1.it)("should abort file upload when signal is aborted",async()=>{const a="Content for aborted file upload test.",o=(0,os_1.tmpdir)(),i=(0,path_1.join)(o,`storage-test-file-${Date.now()}.txt`);(0,fs_1.writeFileSync)(i,a);const r={name:"storage-test-file.txt",path:i,mimeType:index_1.LLMUploadFileMimeTypes.PLAIN_TEXT,content:a,abortSignal:s};try{t.abort();const s=await e.uploadFile(r);(0,globals_1.expect)((0,helpers_1.hasError)(s)).toBe(!0),(0,helpers_1.hasError)(s)&&(0,globals_1.expect)(s.error).toEqual(globals_1.expect.objectContaining({message:globals_1.expect.stringMatching(/aborted/i)}))}finally{(0,fs_1.unlinkSync)(i)}}),(0,globals_1.it)("should abort file storage creation when signal is aborted",async()=>{const o="Content for aborted file storage test.",i=(0,os_1.tmpdir)(),r=(0,path_1.join)(i,`storage-test-file-${Date.now()}.txt`);(0,fs_1.writeFileSync)(r,o);const n={name:"storage-test-file.txt",path:r,mimeType:index_1.LLMUploadFileMimeTypes.PLAIN_TEXT,content:o};let l;try{if(l=await e.uploadFile(n),(0,helpers_1.hasError)(l))throw new Error('File upload failed in "should abort file storage creation when signal is aborted"');{t.abort();const o=await e.createFileStorage({uploadedFiles:[l],model:a,instructions:"Test instructions for aborted file storage",abortSignal:s});(0,globals_1.expect)((0,helpers_1.hasError)(o)).toBe(!0),(0,helpers_1.hasError)(o)&&(0,globals_1.expect)(o.error).toEqual(globals_1.expect.objectContaining({message:globals_1.expect.stringMatching(/aborted/i)}))}}finally{(0,fs_1.unlinkSync)(r)}}),(0,globals_1.it)("should abort assistant creation when signal is aborted",async()=>{t.abort();const o=await e.createAssistant({model:a,instructions:"You are a test assistant.",abortSignal:s});(0,globals_1.expect)((0,helpers_1.hasError)(o)).toBe(!0),(0,helpers_1.hasError)(o)&&(0,globals_1.expect)(o.error).toEqual(globals_1.expect.objectContaining({message:globals_1.expect.stringMatching(/aborted/i)}))}),(0,globals_1.it)("should abort chat creation when signal is aborted",async()=>{t.abort();const o=await e.createChat({model:a,instructions:"You are a test chat.",abortSignal:s});(0,globals_1.expect)((0,helpers_1.hasError)(o)).toBe(!0),(0,helpers_1.hasError)(o)&&(0,globals_1.expect)(o.error).toEqual(globals_1.expect.objectContaining({message:globals_1.expect.stringMatching(/aborted/i)}))}),(0,globals_1.it)("should abort assistance in chat when signal is aborted",async()=>{const o=await e.createAssistant({model:a,instructions:"You are a test assistant."});if((0,helpers_1.hasError)(o))throw new Error('Assistant creation failed in "should abort assistance in chat when signal is aborted"');{const i=await e.createChat({model:a,instructions:"You are a test chat."});if((0,helpers_1.hasError)(i))throw new Error('Chat creation failed in "should abort assistance in chat when signal is aborted"');{t.abort();const a=await e.assistInChat({message:{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:"This message should be aborted."}]},chatId:i.chatId,assistantId:o.assistantId,abortSignal:s});(0,globals_1.expect)((0,helpers_1.hasError)(a)).toBe(!0),(0,helpers_1.hasError)(a)&&(0,globals_1.expect)(a.error).toEqual(globals_1.expect.objectContaining({message:globals_1.expect.stringMatching(/aborted/i)}))}}})})})})}):console.warn(`Skipping tests for ${t} provider: disabled in test config.`)})});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LLMAssistance.service.integration.test.js","sourceRoot":"","sources":["../../../src/tests/integration/LLMAssistance.service.integration.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const globals_1=require("@jest/globals"),index_1=require("../../index"),helpers_1=require("../../tests/helpers"),testConfig=(0,helpers_1.resolveTestConfig)(index_1.LLMPurposes.Completion);(0,globals_1.describe)("LLM Completion Service",()=>{Object.values(testConfig).forEach(e=>{const{provider:t,availableModels:s,clientOptions:o,requireCredentials:a,isEnabled:l}=e;l?(0,globals_1.describe)(`${t} Provider`,()=>{let e;(0,globals_1.beforeAll)(()=>{a(),e=index_1.LLMServiceFactory.getCompletionService(t,helpers_1.mockLogger,o)}),(0,globals_1.beforeEach)(()=>{globals_1.jest.clearAllMocks()}),(0,globals_1.describe)("Service Initialization",()=>{(0,globals_1.it)("should create completion service instance",()=>{(0,globals_1.expect)(e).toBeDefined(),(0,globals_1.expect)(e.provider).toBe(t)})}),Object.values(s).forEach(t=>{const o=t.name;(0,globals_1.describe)(`Model: ${o}`,()=>{const t=s[o];(0,globals_1.it)("should send a simple message and receive a response",async()=>{const s=await e.sendMessage({model:t,message:{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:'Hello, this is a test message for LLM completion. Respond with a single word - "OK".'}]}});(0,globals_1.expect)((0,helpers_1.hasText)(s)).toBe(!0),(0,helpers_1.hasText)(s)&&(0,globals_1.expect)(s.text).toMatch(/OK/i)}),(0,globals_1.it)("should handle message with history",async()=>{const s=await e.sendMessage({model:t,message:{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:'Continue the conversation, respond with a single word - "SUCCESS".'}]},history:[{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:'Hello, this is a test message for LLM completion. Respond with a single word - "FAILURE".'}]},{role:index_1.LLMRoles.Assistant,content:[{type:index_1.LLMMessageContentType.TEXT,text:"FAILURE"}]}]});(0,globals_1.expect)((0,helpers_1.hasText)(s)).toBe(!0),(0,helpers_1.hasText)(s)&&(0,globals_1.expect)(s.text).toMatch(/SUCCESS/i)}),(0,globals_1.it)("should handle custom instructions",async()=>{const s=await e.sendMessage({model:t,message:{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:"My name is John"}]},instructions:"You are an assistant that always responds with a greeting. Always include user's name in your response, like this: \"Hi, {{name}}!\". Important: replace {{name}} with the user's name."});(0,globals_1.expect)((0,helpers_1.hasText)(s)).toBe(!0),(0,helpers_1.hasText)(s)&&(0,globals_1.expect)(s.text).toMatch(/John/i)}),(0,globals_1.it)("should extract text from image url and use it in response template",async()=>{const s=await e.sendMessage({model:t,instructions:'You must respond with ONLY two words: the text from the image followed by "CONFIRMED". No other text.',message:{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:"Reply with exactly two words: [word from image] CONFIRMED"},{type:index_1.LLMMessageContentType.IMAGE_URL,image_url:{url:"https://dev-media.mate.academy/llm-gateway-test-image.png"}}]}});(0,globals_1.expect)((0,helpers_1.hasText)(s)).toBe(!0),(0,helpers_1.hasText)(s)&&(0,globals_1.expect)(s.text).toMatch(/learn\s+confirmed/i)}),(0,globals_1.it)("should handle multiple content items in a single message",async()=>{const s=await e.sendMessage({model:t,message:{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:'Extract the word from the image and respond with "[word] TO CODE" where [word] is the text you see in the image.'},{type:index_1.LLMMessageContentType.IMAGE_URL,image_url:{url:"https://dev-media.mate.academy/llm-gateway-test-image.png"}}]}});(0,globals_1.expect)((0,helpers_1.hasText)(s)).toBe(!0),(0,helpers_1.hasText)(s)&&(0,globals_1.expect)(s.text).toMatch(/learn\s*to\s*code/i)}),(0,globals_1.it)("should handle mixed content with text and image",async()=>{const s=await e.sendMessage({model:t,instructions:"Respond to the text instruction and mention if you can see an image.",message:{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:'Take the word from the image and complete this template: "[word from image] AND TEXT"'},{type:index_1.LLMMessageContentType.IMAGE_URL,image_url:{url:"https://dev-media.mate.academy/llm-gateway-test-image.png",detail:"low"}}]}});(0,globals_1.expect)((0,helpers_1.hasText)(s)).toBe(!0),(0,helpers_1.hasText)(s)&&(0,globals_1.expect)(s.text).toMatch(/learn\s*and\s*text/i)}),(0,globals_1.describe)("Abort signal handling",()=>{let s,o;(0,globals_1.beforeEach)(()=>{s=new AbortController,o=s.signal}),(0,globals_1.it)("should abort message sending when signal is aborted",async()=>{s.abort();const a=await e.sendMessage({model:t,message:{role:index_1.LLMRoles.User,content:[{type:index_1.LLMMessageContentType.TEXT,text:"This message should be aborted."}]},abortSignal:o});(0,globals_1.expect)((0,helpers_1.hasError)(a)).toBe(!0),(0,helpers_1.hasError)(a)&&(0,globals_1.expect)(a.error).toEqual(globals_1.expect.objectContaining({message:globals_1.expect.stringMatching(/aborted/i)}))})})})})}):console.warn(`Skipping tests for ${t} provider: disabled in test config.`)})});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LLMCompletion.service.integration.test.js","sourceRoot":"","sources":["../../../src/tests/integration/LLMCompletion.service.integration.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const globals_1=require("@jest/globals"),path_1=require("path"),index_1=require("../../index"),helpers_1=require("../../tests/helpers"),testConfig=(0,helpers_1.resolveTestConfig)(index_1.LLMPurposes.SpeechToText),mockedSpeechFiles={[index_1.LLMUploadFileMimeTypes.AUDIO_MP3]:(0,path_1.join)(__dirname,"..","assets","stt.mp3"),[index_1.LLMUploadFileMimeTypes.AUDIO_WAV]:(0,path_1.join)(__dirname,"..","assets","stt.wav"),[index_1.LLMUploadFileMimeTypes.AUDIO_WEBM]:(0,path_1.join)(__dirname,"..","assets","stt.webm"),[index_1.LLMUploadFileMimeTypes.AUDIO_OGG]:(0,path_1.join)(__dirname,"..","assets","stt.ogg")};(0,globals_1.describe)("LLM Speech To Text Service",()=>{Object.values(testConfig).forEach(e=>{const{provider:s,availableModels:t,clientOptions:o,requireCredentials:a,isEnabled:l}=e;l?(0,globals_1.describe)(`${s} Provider`,()=>{let e;(0,globals_1.beforeAll)(()=>{a(),e=index_1.LLMServiceFactory.getSpeechToTextService(s,helpers_1.mockLogger,o)}),(0,globals_1.beforeEach)(()=>{globals_1.jest.clearAllMocks()}),(0,globals_1.describe)("Service Initialization",()=>{(0,globals_1.it)("should create speech-to-text service instance",()=>{(0,globals_1.expect)(e).toBeDefined(),(0,globals_1.expect)(e.provider).toBe(s)})}),Object.values(t).forEach(s=>{const o=s.name;(0,globals_1.describe)(`Model: ${o}`,()=>{const s=t[o];Object.entries(mockedSpeechFiles).forEach(([t,o])=>{(0,globals_1.it)(`should transcribe ${t} file and return text containing "learn to code"`,async()=>{const a=await e.transcribe({pathToAudio:o,mimeType:t,model:s});(0,globals_1.expect)((0,helpers_1.hasText)(a)).toBe(!0),(0,helpers_1.hasText)(a)&&(0,globals_1.expect)(a.text).toMatch(/learn.*to.*code/i)})}),(0,globals_1.it)("should handle invalid audio file path",async()=>{const t=(0,path_1.join)(__dirname,"..","nonexistent.mp3"),o=await e.transcribe({pathToAudio:t,model:s});(0,globals_1.expect)((0,helpers_1.hasError)(o)).toBe(!0)}),(0,globals_1.describe)("Abort signal handling",()=>{let t,o;(0,globals_1.beforeEach)(()=>{t=new AbortController,o=t.signal}),(0,globals_1.it)("should abort transcription when signal is aborted",async()=>{t.abort();const a=await e.transcribe({pathToAudio:mockedSpeechFiles[index_1.LLMUploadFileMimeTypes.AUDIO_MP3],model:s,abortSignal:o});(0,globals_1.expect)((0,helpers_1.hasError)(a)).toBe(!0),(0,helpers_1.hasError)(a)&&(0,globals_1.expect)(a.error).toEqual(globals_1.expect.objectContaining({message:globals_1.expect.stringMatching(/aborted/i)}))})})})})}):console.warn(`Skipping tests for ${s} provider: disabled in test config.`)})});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LLMSpeechToText.service.integration.test.js","sourceRoot":"","sources":["../../../src/tests/integration/LLMSpeechToText.service.integration.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const globals_1=require("@jest/globals"),index_1=require("../../index"),helpers_1=require("../../tests/helpers"),testConfig=(0,helpers_1.resolveTestConfig)(index_1.LLMPurposes.TextToSpeech);(0,globals_1.describe)("LLM Text To Speech Service",()=>{Object.values(testConfig).forEach(e=>{const{provider:t,availableModels:o,clientOptions:s,requireCredentials:l,isEnabled:r}=e;r?(0,globals_1.describe)(`${t} Provider`,()=>{let e;(0,globals_1.beforeAll)(()=>{l(),e=index_1.LLMServiceFactory.getTextToSpeechService(t,helpers_1.mockLogger,s)}),(0,globals_1.beforeEach)(()=>{globals_1.jest.clearAllMocks()}),(0,globals_1.describe)("Service Initialization",()=>{(0,globals_1.it)("should create text-to-speech service instance",()=>{(0,globals_1.expect)(e).toBeDefined(),(0,globals_1.expect)(e.provider).toBe(t)})}),Object.values(o).forEach(t=>{const s=t.name;(0,globals_1.describe)(`Model: ${s}`,()=>{const t=o[s];(0,globals_1.it)("should convert text to speech and return audio file buffer",async()=>{const o=await e.createSpeech({text:"Hello, this is a test of text to speech functionality.",model:t});(0,globals_1.expect)((0,helpers_1.hasError)(o)).toBe(!1),(0,helpers_1.hasError)(o)||(0,globals_1.expect)(o.audio).toBeDefined()}),(0,globals_1.it)("should convert text to speech with instructions and return audio file buffer",async()=>{const o=await e.createSpeech({text:"This is a test with instructions.",model:t,instructions:"Please read this text in a calm and clear voice."});(0,globals_1.expect)((0,helpers_1.hasError)(o)).toBe(!1),(0,helpers_1.hasError)(o)||(0,globals_1.expect)(o.audio).toBeDefined()}),(0,globals_1.describe)("Abort signal handling",()=>{let o,s;(0,globals_1.beforeEach)(()=>{o=new AbortController,s=o.signal}),(0,globals_1.it)("should abort speech creation when signal is aborted",async()=>{o.abort();const l=await e.createSpeech({text:"This should not be processed",model:t,abortSignal:s});(0,globals_1.expect)((0,helpers_1.hasError)(l)).toBe(!0),(0,helpers_1.hasError)(l)&&(0,globals_1.expect)(l.error).toEqual(globals_1.expect.objectContaining({message:globals_1.expect.stringMatching(/aborted/i)}))})})})})}):console.warn(`Skipping tests for ${t} provider: disabled in test config.`)})});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LLMTextToSpeech.service.integration.test.js","sourceRoot":"","sources":["../../../src/tests/integration/LLMTextToSpeech.service.integration.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const globals_1=require("@jest/globals"),dotenv_1=require("dotenv"),path_1=__importDefault(require("path")),envPath=path_1.default.resolve(__dirname,"../../../..",".env.file");(0,dotenv_1.config)({path:envPath}),globals_1.jest.setTimeout(45e3);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/tests/setup.ts"],"names":[],"mappings":";;;;;AAAA,2CAAqC;AACrC,mCAAgC;AAChC,gDAAwB;AAExB,gEAAgE;AAChE,MAAM,OAAO,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;AACpE,IAAA,eAAM,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;AAE1B,4CAA4C;AAC5C,cAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const globals_1=require("@jest/globals"),promptBuilder_1=require("../../promptBuilder");(0,globals_1.describe)("PromptBuilder",()=>{(0,globals_1.describe)("createPromptTemplate",()=>{(0,globals_1.it)("should create a template without placeholders",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("This is a simple message without placeholders.")();(0,globals_1.expect)(e).toBe("This is a simple message without placeholders.")}),(0,globals_1.it)("should create a template with a single placeholder",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("Hello, {{name}}!")({name:"John"});(0,globals_1.expect)(e).toBe("Hello, John!")}),(0,globals_1.it)("should create a template with multiple placeholders",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("Generate a welcome message for {{user}} who started {{topic}} on {{date}}.")({user:"Alice",topic:"JavaScript Basics",date:"2024-01-15"});(0,globals_1.expect)(e).toBe("Generate a welcome message for Alice who started JavaScript Basics on 2024-01-15.")}),(0,globals_1.it)("should handle numeric values in placeholders",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("The user has {{score}} points out of {{total}}.")({score:85,total:100});(0,globals_1.expect)(e).toBe("The user has 85 points out of 100.")}),(0,globals_1.it)("should handle placeholders with whitespace in content",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("Hello, {{ name }}! Your score is {{ score }}.")({" name ":"Bob"," score ":95});(0,globals_1.expect)(e).toBe("Hello, Bob! Your score is 95.")}),(0,globals_1.it)("should replace multiple occurrences of the same placeholder",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("{{name}} is learning {{subject}}. {{name}} enjoys {{subject}} very much.")({name:"Charlie",subject:"TypeScript"});(0,globals_1.expect)(e).toBe("Charlie is learning TypeScript. Charlie enjoys TypeScript very much.")}),(0,globals_1.it)("should trim whitespace from template",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("\n\n Generate a message for {{user}}.\n\n ")({user:"Dave"});(0,globals_1.expect)(e).toBe("Generate a message for Dave.")}),(0,globals_1.it)("should handle complex multiline templates",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("\n Generate a welcome message for a user who has just started their auto tech check attempt on {{topicTitle}}.\n The user's name is {{userName}} and they are at level {{level}}.\n Please make the message encouraging and informative.\n ")({topicTitle:"React Hooks",userName:"Emma",level:2});(0,globals_1.expect)(e).toBe("Generate a welcome message for a user who has just started their auto tech check attempt on React Hooks.\n The user's name is Emma and they are at level 2.\n Please make the message encouraging and informative.")}),(0,globals_1.it)("should handle templates with no variables when none are needed",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("This is a static message.")();(0,globals_1.expect)(e).toBe("This is a static message.")}),(0,globals_1.it)("should preserve template structure with special characters",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("Email: {{email}} | Phone: {{phone}} | Score: {{score}}%")({email:"test@example.com",phone:"+1-555-0123",score:87});(0,globals_1.expect)(e).toBe("Email: test@example.com | Phone: +1-555-0123 | Score: 87%")}),(0,globals_1.describe)("conditional sections",()=>{(0,globals_1.it)("should handle true conditional section",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("Welcome, {{userName}}! {{#showBonus}}You have a bonus!{{/showBonus}}")({userName:"Alice",showBonus:!0});(0,globals_1.expect)(e).toBe("Welcome, Alice! You have a bonus!")}),(0,globals_1.it)("should handle truthy conditional section",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("Welcome, {{userName}}! {{#showBonus}}You have a bonus!{{/showBonus}}")({userName:"Charlie",showBonus:"yes"});(0,globals_1.expect)(e).toBe("Welcome, Charlie! You have a bonus!")}),(0,globals_1.it)("should handle false conditional section",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("Welcome, {{userName}}! {{#showBonus}}You have a bonus!{{/showBonus}}")({userName:"Bob",showBonus:!1});(0,globals_1.expect)(e).toBe("Welcome, Bob! ")}),(0,globals_1.it)("should handle falsy conditional section",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("Welcome, {{userName}}! {{#showBonus}}You have a bonus!{{/showBonus}}")({userName:"Dave",showBonus:""});(0,globals_1.expect)(e).toBe("Welcome, Dave! ")}),(0,globals_1.it)("should handle nested conditional sections, all visible sections",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("Welcome, {{userName}}! {{#showBonus}}You have a bonus! {{#showDiscount}}Your discount is 20%.{{/showDiscount}}{{/showBonus}}")({userName:"Eve",showBonus:!0,showDiscount:!0});(0,globals_1.expect)(e).toBe("Welcome, Eve! You have a bonus! Your discount is 20%.")}),(0,globals_1.it)("should handle nested conditional sections, outer section visible, inner section hidden",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("Welcome, {{userName}}! {{#showBonus}}You have a bonus! {{#showDiscount}}Your discount is 20%.{{/showDiscount}}{{/showBonus}}")({userName:"Frank",showBonus:!0,showDiscount:!1});(0,globals_1.expect)(e).toBe("Welcome, Frank! You have a bonus! ")}),(0,globals_1.it)("should handle nested conditional sections, outer section hidden",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("Welcome, {{userName}}! {{#showBonus}}You have a bonus! {{#showDiscount}}Your discount is 20%.{{/showDiscount}}{{/showBonus}}")({userName:"Grace",showBonus:!1,showDiscount:!0});(0,globals_1.expect)(e).toBe("Welcome, Grace! ")}),(0,globals_1.it)("should handle section with variable as condition",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("Welcome, {{userName}}! {{#valueAsCondition}}This section is visible because the value is truthy: {{valueAsCondition}}{{/valueAsCondition}}")({userName:"Hannah",valueAsCondition:"This is a test value"});(0,globals_1.expect)(e).toBe("Welcome, Hannah! This section is visible because the value is truthy: This is a test value")}),(0,globals_1.it)("should handle multiple sections with the same name",()=>{const e=(0,promptBuilder_1.createPromptTemplate)("Welcome, {{userName}}! {{#section}}This is section 1.{{/section}} {{#section}}This is section 2.{{/section}}")({userName:"Ivy",section:!0});(0,globals_1.expect)(e).toBe("Welcome, Ivy! This is section 1. This is section 2.")})})})});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"promptBuilder.test.js","sourceRoot":"","sources":["../../../src/tests/unit/promptBuilder.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mate-academy/llm-gateway",
|
|
3
|
-
"version": "2.2.3-canary.
|
|
3
|
+
"version": "2.2.3-canary.7",
|
|
4
4
|
"description": "A gateway package for LLM services.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -13,11 +13,17 @@
|
|
|
13
13
|
"test": "ENABLE_LOGGING=true jest",
|
|
14
14
|
"test:silent": "jest",
|
|
15
15
|
"test:integration": "ENABLE_LOGGING=true jest src/tests/integration --verbose",
|
|
16
|
+
"test:dist:prepare": "npm run build && npm run create-dist-tests",
|
|
17
|
+
"test:dist": "npm run test:dist:prepare && ENABLE_LOGGING=true jest --config=jest.dist.config.js",
|
|
18
|
+
"test:dist:silent": "npm run test:dist:prepare && jest --config=jest.dist.config.js",
|
|
19
|
+
"test:dist:integration": "npm run test:dist:prepare && ENABLE_LOGGING=true jest --config=jest.dist.config.js dist-tests/integration --verbose",
|
|
20
|
+
"test:both": "npm run test && npm run test:dist",
|
|
21
|
+
"create-dist-tests": "node scripts/create-dist-tests.js",
|
|
16
22
|
"prepublish-tests": "node scripts/prepublish-tests.js",
|
|
17
|
-
"prepublishOnly": "npm run
|
|
23
|
+
"prepublishOnly": "npm run lint:fix && npm run type-check && npm run build && npm run create-dist-tests && npm run prepublish-tests",
|
|
18
24
|
"type-check": "tsc --noEmit",
|
|
19
25
|
"postpublish": "npm run clean",
|
|
20
|
-
"clean": "rm -rf ./dist",
|
|
26
|
+
"clean": "rm -rf ./dist ./dist-tests",
|
|
21
27
|
"patch": "npm version patch && npm publish",
|
|
22
28
|
"minor": "npm version minor && npm publish",
|
|
23
29
|
"major": "npm version major && npm publish",
|
|
@@ -54,9 +60,9 @@
|
|
|
54
60
|
"@types/inquirer": "^9.0.8",
|
|
55
61
|
"@types/jest": "^30.0.0",
|
|
56
62
|
"@types/mime-types": "^3.0.1",
|
|
57
|
-
"@typescript-eslint/eslint-plugin": "^8.
|
|
63
|
+
"@typescript-eslint/eslint-plugin": "^8.37.0",
|
|
58
64
|
"dotenv": "^17.2.0",
|
|
59
|
-
"eslint": "^9.
|
|
65
|
+
"eslint": "^9.31.0",
|
|
60
66
|
"eslint-plugin-no-only-tests": "^3.3.0",
|
|
61
67
|
"glob": "^11.0.3",
|
|
62
68
|
"inquirer": "^12.7.0",
|
|
@@ -65,15 +71,15 @@
|
|
|
65
71
|
"ts-jest": "^29.4.0",
|
|
66
72
|
"tsc-alias": "^1.8.16",
|
|
67
73
|
"typescript": "^5.8.3",
|
|
68
|
-
"typescript-eslint": "^8.
|
|
74
|
+
"typescript-eslint": "^8.37.0"
|
|
69
75
|
},
|
|
70
76
|
"dependencies": {
|
|
71
|
-
"@google/genai": "^1.
|
|
77
|
+
"@google/genai": "^1.10.0",
|
|
72
78
|
"@mate-academy/core": "^1.10.4",
|
|
73
79
|
"axios": "^1.10.0",
|
|
74
80
|
"js-tiktoken": "^1.0.20",
|
|
75
81
|
"mime-types": "^3.0.1",
|
|
76
|
-
"openai": "^5.
|
|
82
|
+
"openai": "^5.10.1",
|
|
77
83
|
"uuid": "^11.1.0"
|
|
78
84
|
}
|
|
79
85
|
}
|