@activepieces/piece-ai 0.1.5 → 0.1.6

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@activepieces/piece-ai",
3
- "version": "0.1.5",
3
+ "version": "0.1.6",
4
4
  "type": "commonjs",
5
5
  "main": "./src/index.js",
6
6
  "types": "./src/index.d.ts",
@@ -15,12 +15,12 @@
15
15
  "@openrouter/ai-sdk-provider": "2.1.1",
16
16
  "@sinclair/typebox": "0.34.11",
17
17
  "ai": "^6.0.0",
18
+ "ai-gateway-provider": "3.1.1",
18
19
  "ajv": "8.17.1",
19
20
  "axios": "1.13.1",
20
21
  "axios-retry": "4.4.1",
21
22
  "deepmerge-ts": "7.1.0",
22
23
  "form-data": "4.0.4",
23
- "i18next": "23.13.0",
24
24
  "mime-types": "2.1.35",
25
25
  "nanoid": "3.3.8",
26
26
  "semver": "7.6.0",
@@ -28,8 +28,8 @@
28
28
  "tslib": "^2.3.0",
29
29
  "zod": "4.1.13",
30
30
  "@activepieces/pieces-common": "0.11.5",
31
- "@activepieces/pieces-framework": "0.25.2",
32
- "@activepieces/shared": "0.34.0"
31
+ "@activepieces/pieces-framework": "0.25.3",
32
+ "@activepieces/shared": "0.37.0"
33
33
  },
34
34
  "resolutions": {
35
35
  "rollup": "npm:@rollup/wasm-node"
package/src/index.js CHANGED
@@ -13,7 +13,7 @@ const run_agent_1 = require("./lib/actions/agents/run-agent");
13
13
  exports.ai = (0, pieces_framework_1.createPiece)({
14
14
  displayName: "AI",
15
15
  auth: pieces_framework_1.PieceAuth.None(),
16
- minimumSupportedRelease: '0.75.0',
16
+ minimumSupportedRelease: '0.78.2',
17
17
  categories: [
18
18
  shared_1.PieceCategory.ARTIFICIAL_INTELLIGENCE,
19
19
  shared_1.PieceCategory.UNIVERSAL_AI,
@@ -4,13 +4,16 @@ exports.googleSearchTool = exports.openaiSearchTool = exports.anthropicSearchToo
4
4
  exports.createAIModel = createAIModel;
5
5
  const tslib_1 = require("tslib");
6
6
  const anthropic_1 = require("@ai-sdk/anthropic");
7
- const google_1 = require("@ai-sdk/google");
8
7
  const openai_1 = require("@ai-sdk/openai");
8
+ const google_1 = require("@ai-sdk/google");
9
9
  const openai_compatible_1 = require("@ai-sdk/openai-compatible");
10
10
  const azure_1 = require("@ai-sdk/azure");
11
11
  const ai_sdk_provider_1 = require("@openrouter/ai-sdk-provider");
12
12
  const pieces_common_1 = require("@activepieces/pieces-common");
13
13
  const shared_1 = require("@activepieces/shared");
14
+ const ai_gateway_provider_1 = require("ai-gateway-provider");
15
+ const anthropic_2 = require("ai-gateway-provider/providers/anthropic");
16
+ const google_2 = require("ai-gateway-provider/providers/google");
14
17
  function createAIModel(_a) {
15
18
  return tslib_1.__awaiter(this, arguments, void 0, function* ({ provider, modelId, engineToken, projectId, flowId, runId, apiUrl, openaiResponsesModel = false, isImage, }) {
16
19
  const { body: { config, auth, } } = yield pieces_common_1.httpClient.sendRequest({
@@ -48,20 +51,49 @@ function createAIModel(_a) {
48
51
  return provider.chat(modelId);
49
52
  }
50
53
  case shared_1.AIProviderName.CLOUDFLARE_GATEWAY: {
51
- const { accountId, gatewayId } = config;
52
- const provider = (0, openai_compatible_1.createOpenAICompatible)({
53
- name: 'cloudflare',
54
- baseURL: `https://gateway.ai.cloudflare.com/v1/${accountId}/${gatewayId}/compat`,
55
- headers: {
56
- 'cf-aig-authorization': `Bearer ${auth.apiKey}`,
57
- 'cf-aig-metadata': JSON.stringify({
58
- projectId,
59
- flowId,
60
- runId,
61
- })
62
- }
54
+ const { accountId, gatewayId, vertexProject, vertexRegion } = config;
55
+ const aigateway = (0, ai_gateway_provider_1.createAiGateway)({
56
+ accountId: accountId,
57
+ gateway: gatewayId,
58
+ apiKey: auth.apiKey,
63
59
  });
64
- return provider.chatModel(modelId);
60
+ const { provider: providerPrefix, model: actualModelId, publisher } = (0, shared_1.splitCloudflareGatewayModelId)(modelId);
61
+ const cfMetadataHeaders = {
62
+ 'cf-aig-metadata': JSON.stringify({
63
+ projectId,
64
+ flowId,
65
+ runId,
66
+ }),
67
+ };
68
+ const headers = Object.assign({ 'cf-aig-authorization': `Bearer ${auth.apiKey}` }, cfMetadataHeaders);
69
+ switch (providerPrefix) {
70
+ case 'anthropic': {
71
+ const anthropicProvider = (0, anthropic_2.createAnthropic)({
72
+ headers
73
+ });
74
+ return aigateway(anthropicProvider(actualModelId));
75
+ }
76
+ case 'google-ai-studio': {
77
+ const googleProvider = (0, google_2.createGoogleGenerativeAI)({
78
+ headers
79
+ });
80
+ return aigateway(googleProvider(actualModelId));
81
+ }
82
+ case 'google-vertex-ai': {
83
+ if (vertexProject && vertexRegion && publisher) {
84
+ const provider = (0, google_1.createGoogleGenerativeAI)({
85
+ apiKey: auth.apiKey,
86
+ baseURL: `https://gateway.ai.cloudflare.com/v1/${accountId}/${gatewayId}/google-vertex-ai/v1/projects/${vertexProject}/locations/${vertexRegion}/publishers/${publisher}/`,
87
+ headers,
88
+ });
89
+ return provider(actualModelId);
90
+ }
91
+ return handleDefaultAiGatewayProvider({ accountId, gatewayId, headers, isImage, modelId });
92
+ }
93
+ default: {
94
+ return handleDefaultAiGatewayProvider({ accountId, gatewayId, headers, isImage, modelId });
95
+ }
96
+ }
65
97
  }
66
98
  case shared_1.AIProviderName.CUSTOM: {
67
99
  const { apiKeyHeader, baseUrl } = config;
@@ -90,4 +122,15 @@ function createAIModel(_a) {
90
122
  exports.anthropicSearchTool = anthropic_1.anthropic.tools.webSearch_20250305;
91
123
  exports.openaiSearchTool = openai_1.openai.tools.webSearchPreview;
92
124
  exports.googleSearchTool = google_1.google.tools.googleSearch;
125
+ const handleDefaultAiGatewayProvider = ({ accountId, gatewayId, headers, isImage, modelId }) => {
126
+ const provider = (0, openai_compatible_1.createOpenAICompatible)({
127
+ name: 'cloudflare',
128
+ baseURL: `https://gateway.ai.cloudflare.com/v1/${accountId}/${gatewayId}/compat`,
129
+ headers,
130
+ });
131
+ if (isImage) {
132
+ return provider.imageModel(modelId);
133
+ }
134
+ return provider.chatModel(modelId);
135
+ };
93
136
  //# sourceMappingURL=ai-sdk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai-sdk.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/ai/src/lib/common/ai-sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-sdk.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/ai/src/lib/common/ai-sdk.ts"],"names":[],"mappings":"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"}