Initial commit
This commit is contained in:
202
node_modules/@google/generative-ai/LICENSE
generated
vendored
Normal file
202
node_modules/@google/generative-ai/LICENSE
generated
vendored
Normal file
@ -0,0 +1,202 @@
|
||||
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
98
node_modules/@google/generative-ai/README.md
generated
vendored
Normal file
98
node_modules/@google/generative-ai/README.md
generated
vendored
Normal file
@ -0,0 +1,98 @@
|
||||
# Google AI SDK for JavaScript
|
||||
|
||||
The Google AI JavaScript SDK is the easiest way for JavaScript developers to
|
||||
build with the Gemini API. The Gemini API gives you access to Gemini
|
||||
[models](https://ai.google.dev/models/gemini) created by
|
||||
[Google DeepMind](https://deepmind.google/technologies/gemini/#introduction).
|
||||
Gemini models are built from the ground up to be multimodal, so you can reason
|
||||
seamlessly across text, images, and code.
|
||||
|
||||
> [!CAUTION] **Using the Google AI SDK for JavaScript directly from a
|
||||
> client-side app is recommended for prototyping only.** If you plan to enable
|
||||
> billing, we strongly recommend that you call the Google AI Gemini API only
|
||||
> server-side to keep your API key safe. You risk potentially exposing your API
|
||||
> key to malicious actors if you embed your API key directly in your JavaScript
|
||||
> app or fetch it remotely at runtime.
|
||||
|
||||
## Get started with the Gemini API
|
||||
|
||||
1. Go to [Google AI Studio](https://aistudio.google.com/).
|
||||
2. Login with your Google account.
|
||||
3. [Create an API key](https://aistudio.google.com/app/apikey). Note that in
|
||||
Europe the free tier is not available.
|
||||
4. Try the
|
||||
[Node.js quickstart](https://ai.google.dev/tutorials/node_quickstart)
|
||||
|
||||
## Usage example
|
||||
|
||||
See the [Node.js quickstart](https://ai.google.dev/tutorials/node_quickstart)
|
||||
for complete code.
|
||||
|
||||
1. Install the SDK package
|
||||
|
||||
```js
|
||||
npm install @google/generative-ai
|
||||
```
|
||||
|
||||
1. Initialize the model
|
||||
|
||||
```js
|
||||
const { GoogleGenerativeAI } = require("@google/generative-ai");
|
||||
|
||||
const genAI = new GoogleGenerativeAI(process.env.API_KEY);
|
||||
|
||||
const model = genAI.getGenerativeModel({ model: "gemini-1.5-flash" });
|
||||
```
|
||||
|
||||
1. Run a prompt
|
||||
|
||||
```js
|
||||
const prompt = "Does this look store-bought or homemade?";
|
||||
const image = {
|
||||
inlineData: {
|
||||
data: Buffer.from(fs.readFileSync("cookie.png")).toString("base64"),
|
||||
mimeType: "image/png",
|
||||
},
|
||||
};
|
||||
|
||||
const result = await model.generateContent([prompt, image]);
|
||||
console.log(result.response.text());
|
||||
```
|
||||
|
||||
## Try out a sample app
|
||||
|
||||
This repository contains sample Node and web apps demonstrating how the SDK can
|
||||
access and utilize the Gemini model for various use cases.
|
||||
|
||||
**To try out the sample Node app, follow these steps:**
|
||||
|
||||
1. Check out this repository. \
|
||||
`git clone https://github.com/google/generative-ai-js`
|
||||
|
||||
1. [Obtain an API key](https://makersuite.google.com/app/apikey) to use with
|
||||
the Google AI SDKs.
|
||||
|
||||
2. cd into the `samples` folder and run `npm install`.
|
||||
|
||||
3. Assign your API key to an environment variable: `export API_KEY=MY_API_KEY`.
|
||||
|
||||
4. Open the sample file you're interested in. Example: `text_generation.js`.
|
||||
In the `runAll()` function, comment out any samples you don't want to run.
|
||||
|
||||
5. Run the sample file. Example: `node text_generation.js`.
|
||||
|
||||
## Documentation
|
||||
|
||||
See the
|
||||
[Gemini API Cookbook](https://github.com/google-gemini/gemini-api-cookbook/) or
|
||||
[ai.google.dev](https://ai.google.dev) for complete documentation.
|
||||
|
||||
## Contributing
|
||||
|
||||
See [Contributing](/docs/contributing.md) for more information on contributing
|
||||
to the Google AI JavaScript SDK.
|
||||
|
||||
## License
|
||||
|
||||
The contents of this repository are licensed under the
|
||||
[Apache License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0).
|
||||
1292
node_modules/@google/generative-ai/dist/generative-ai.d.ts
generated
vendored
Normal file
1292
node_modules/@google/generative-ai/dist/generative-ai.d.ts
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1465
node_modules/@google/generative-ai/dist/index.js
generated
vendored
Normal file
1465
node_modules/@google/generative-ai/dist/index.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
node_modules/@google/generative-ai/dist/index.js.map
generated
vendored
Normal file
1
node_modules/@google/generative-ai/dist/index.js.map
generated
vendored
Normal file
@ -0,0 +1 @@
|
||||
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
||||
1456
node_modules/@google/generative-ai/dist/index.mjs
generated
vendored
Normal file
1456
node_modules/@google/generative-ai/dist/index.mjs
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
node_modules/@google/generative-ai/dist/index.mjs.map
generated
vendored
Normal file
1
node_modules/@google/generative-ai/dist/index.mjs.map
generated
vendored
Normal file
@ -0,0 +1 @@
|
||||
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
||||
17
node_modules/@google/generative-ai/dist/scripts/check-format.d.ts
generated
vendored
Normal file
17
node_modules/@google/generative-ai/dist/scripts/check-format.d.ts
generated
vendored
Normal file
@ -0,0 +1,17 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2023 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export {};
|
||||
18
node_modules/@google/generative-ai/dist/scripts/format-patterns.d.ts
generated
vendored
Normal file
18
node_modules/@google/generative-ai/dist/scripts/format-patterns.d.ts
generated
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export declare const formatPatterns: string[];
|
||||
export declare function getFormatPatternsString(): string;
|
||||
17
node_modules/@google/generative-ai/dist/scripts/license.d.ts
generated
vendored
Normal file
17
node_modules/@google/generative-ai/dist/scripts/license.d.ts
generated
vendored
Normal file
@ -0,0 +1,17 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2023 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export declare function doLicense(write: boolean): Promise<boolean>;
|
||||
17
node_modules/@google/generative-ai/dist/scripts/run-format.d.ts
generated
vendored
Normal file
17
node_modules/@google/generative-ai/dist/scripts/run-format.d.ts
generated
vendored
Normal file
@ -0,0 +1,17 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2023 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export {};
|
||||
797
node_modules/@google/generative-ai/dist/server/index.js
generated
vendored
Normal file
797
node_modules/@google/generative-ai/dist/server/index.js
generated
vendored
Normal file
@ -0,0 +1,797 @@
|
||||
'use strict';
|
||||
|
||||
var fs = require('fs');
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* Basic error type for this SDK.
|
||||
* @public
|
||||
*/
|
||||
class GoogleGenerativeAIError extends Error {
|
||||
constructor(message) {
|
||||
super(`[GoogleGenerativeAI Error]: ${message}`);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Error class covering HTTP errors when calling the server. Includes HTTP
|
||||
* status, statusText, and optional details, if provided in the server response.
|
||||
* @public
|
||||
*/
|
||||
class GoogleGenerativeAIFetchError extends GoogleGenerativeAIError {
|
||||
constructor(message, status, statusText, errorDetails) {
|
||||
super(message);
|
||||
this.status = status;
|
||||
this.statusText = statusText;
|
||||
this.errorDetails = errorDetails;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Errors in the contents of a request originating from user input.
|
||||
* @public
|
||||
*/
|
||||
class GoogleGenerativeAIRequestInputError extends GoogleGenerativeAIError {
|
||||
}
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
const DEFAULT_BASE_URL = "https://generativelanguage.googleapis.com";
|
||||
const DEFAULT_API_VERSION = "v1beta";
|
||||
/**
|
||||
* We can't `require` package.json if this runs on web. We will use rollup to
|
||||
* swap in the version number here at build time.
|
||||
*/
|
||||
const PACKAGE_VERSION = "0.21.0";
|
||||
const PACKAGE_LOG_HEADER = "genai-js";
|
||||
var Task;
|
||||
(function (Task) {
|
||||
Task["GENERATE_CONTENT"] = "generateContent";
|
||||
Task["STREAM_GENERATE_CONTENT"] = "streamGenerateContent";
|
||||
Task["COUNT_TOKENS"] = "countTokens";
|
||||
Task["EMBED_CONTENT"] = "embedContent";
|
||||
Task["BATCH_EMBED_CONTENTS"] = "batchEmbedContents";
|
||||
})(Task || (Task = {}));
|
||||
/**
|
||||
* Simple, but may become more complex if we add more versions to log.
|
||||
*/
|
||||
function getClientHeaders(requestOptions) {
|
||||
const clientHeaders = [];
|
||||
if (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.apiClient) {
|
||||
clientHeaders.push(requestOptions.apiClient);
|
||||
}
|
||||
clientHeaders.push(`${PACKAGE_LOG_HEADER}/${PACKAGE_VERSION}`);
|
||||
return clientHeaders.join(" ");
|
||||
}
|
||||
async function makeRequest(url, fetchOptions, fetchFn = fetch) {
|
||||
let response;
|
||||
try {
|
||||
response = await fetchFn(url, fetchOptions);
|
||||
}
|
||||
catch (e) {
|
||||
handleResponseError(e, url);
|
||||
}
|
||||
if (!response.ok) {
|
||||
await handleResponseNotOk(response, url);
|
||||
}
|
||||
return response;
|
||||
}
|
||||
function handleResponseError(e, url) {
|
||||
let err = e;
|
||||
if (!(e instanceof GoogleGenerativeAIFetchError ||
|
||||
e instanceof GoogleGenerativeAIRequestInputError)) {
|
||||
err = new GoogleGenerativeAIError(`Error fetching from ${url.toString()}: ${e.message}`);
|
||||
err.stack = e.stack;
|
||||
}
|
||||
throw err;
|
||||
}
|
||||
async function handleResponseNotOk(response, url) {
|
||||
let message = "";
|
||||
let errorDetails;
|
||||
try {
|
||||
const json = await response.json();
|
||||
message = json.error.message;
|
||||
if (json.error.details) {
|
||||
message += ` ${JSON.stringify(json.error.details)}`;
|
||||
errorDetails = json.error.details;
|
||||
}
|
||||
}
|
||||
catch (e) {
|
||||
// ignored
|
||||
}
|
||||
throw new GoogleGenerativeAIFetchError(`Error fetching from ${url.toString()}: [${response.status} ${response.statusText}] ${message}`, response.status, response.statusText, errorDetails);
|
||||
}
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
var RpcTask;
|
||||
(function (RpcTask) {
|
||||
RpcTask["UPLOAD"] = "upload";
|
||||
RpcTask["LIST"] = "list";
|
||||
RpcTask["GET"] = "get";
|
||||
RpcTask["DELETE"] = "delete";
|
||||
RpcTask["UPDATE"] = "update";
|
||||
RpcTask["CREATE"] = "create";
|
||||
})(RpcTask || (RpcTask = {}));
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
const taskToMethod = {
|
||||
[RpcTask.UPLOAD]: "POST",
|
||||
[RpcTask.LIST]: "GET",
|
||||
[RpcTask.GET]: "GET",
|
||||
[RpcTask.DELETE]: "DELETE",
|
||||
[RpcTask.UPDATE]: "PATCH",
|
||||
[RpcTask.CREATE]: "POST",
|
||||
};
|
||||
class ServerRequestUrl {
|
||||
constructor(task, apiKey, requestOptions) {
|
||||
this.task = task;
|
||||
this.apiKey = apiKey;
|
||||
this.requestOptions = requestOptions;
|
||||
}
|
||||
appendPath(path) {
|
||||
this._url.pathname = this._url.pathname + `/${path}`;
|
||||
}
|
||||
appendParam(key, value) {
|
||||
this._url.searchParams.append(key, value);
|
||||
}
|
||||
toString() {
|
||||
return this._url.toString();
|
||||
}
|
||||
}
|
||||
class CachedContentUrl extends ServerRequestUrl {
|
||||
constructor(task, apiKey, requestOptions) {
|
||||
var _a, _b;
|
||||
super(task, apiKey, requestOptions);
|
||||
this.task = task;
|
||||
this.apiKey = apiKey;
|
||||
this.requestOptions = requestOptions;
|
||||
const apiVersion = ((_a = this.requestOptions) === null || _a === void 0 ? void 0 : _a.apiVersion) || DEFAULT_API_VERSION;
|
||||
const baseUrl = ((_b = this.requestOptions) === null || _b === void 0 ? void 0 : _b.baseUrl) || DEFAULT_BASE_URL;
|
||||
let initialUrl = baseUrl;
|
||||
initialUrl += `/${apiVersion}/cachedContents`;
|
||||
this._url = new URL(initialUrl);
|
||||
}
|
||||
}
|
||||
class FilesRequestUrl extends ServerRequestUrl {
|
||||
constructor(task, apiKey, requestOptions) {
|
||||
var _a, _b;
|
||||
super(task, apiKey, requestOptions);
|
||||
this.task = task;
|
||||
this.apiKey = apiKey;
|
||||
this.requestOptions = requestOptions;
|
||||
const apiVersion = ((_a = this.requestOptions) === null || _a === void 0 ? void 0 : _a.apiVersion) || DEFAULT_API_VERSION;
|
||||
const baseUrl = ((_b = this.requestOptions) === null || _b === void 0 ? void 0 : _b.baseUrl) || DEFAULT_BASE_URL;
|
||||
let initialUrl = baseUrl;
|
||||
if (this.task === RpcTask.UPLOAD) {
|
||||
initialUrl += `/upload`;
|
||||
}
|
||||
initialUrl += `/${apiVersion}/files`;
|
||||
this._url = new URL(initialUrl);
|
||||
}
|
||||
}
|
||||
function getHeaders(url) {
|
||||
const headers = new Headers();
|
||||
headers.append("x-goog-api-client", getClientHeaders(url.requestOptions));
|
||||
headers.append("x-goog-api-key", url.apiKey);
|
||||
return headers;
|
||||
}
|
||||
async function makeServerRequest(url, headers, body, fetchFn = fetch) {
|
||||
const requestInit = {
|
||||
method: taskToMethod[url.task],
|
||||
headers,
|
||||
};
|
||||
if (body) {
|
||||
requestInit.body = body;
|
||||
}
|
||||
const signal = getSignal(url.requestOptions);
|
||||
if (signal) {
|
||||
requestInit.signal = signal;
|
||||
}
|
||||
return makeRequest(url.toString(), requestInit, fetchFn);
|
||||
}
|
||||
/**
|
||||
* Create an AbortSignal based on the timeout and signal in the
|
||||
* RequestOptions.
|
||||
*/
|
||||
function getSignal(requestOptions) {
|
||||
if ((requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.signal) !== undefined || (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeout) >= 0) {
|
||||
const controller = new AbortController();
|
||||
if ((requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeout) >= 0) {
|
||||
setTimeout(() => controller.abort(), requestOptions.timeout);
|
||||
}
|
||||
if (requestOptions.signal) {
|
||||
requestOptions.signal.addEventListener("abort", () => {
|
||||
controller.abort();
|
||||
});
|
||||
}
|
||||
return controller.signal;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* Class for managing GoogleAI file uploads.
|
||||
* @public
|
||||
*/
|
||||
class GoogleAIFileManager {
|
||||
constructor(apiKey, _requestOptions = {}) {
|
||||
this.apiKey = apiKey;
|
||||
this._requestOptions = _requestOptions;
|
||||
}
|
||||
/**
|
||||
* Upload a file.
|
||||
*/
|
||||
async uploadFile(filePath, fileMetadata) {
|
||||
const file = fs.readFileSync(filePath);
|
||||
const url = new FilesRequestUrl(RpcTask.UPLOAD, this.apiKey, this._requestOptions);
|
||||
const uploadHeaders = getHeaders(url);
|
||||
const boundary = generateBoundary();
|
||||
uploadHeaders.append("X-Goog-Upload-Protocol", "multipart");
|
||||
uploadHeaders.append("Content-Type", `multipart/related; boundary=${boundary}`);
|
||||
const uploadMetadata = getUploadMetadata(fileMetadata);
|
||||
// Multipart formatting code taken from @firebase/storage
|
||||
const metadataString = JSON.stringify({ file: uploadMetadata });
|
||||
const preBlobPart = "--" +
|
||||
boundary +
|
||||
"\r\n" +
|
||||
"Content-Type: application/json; charset=utf-8\r\n\r\n" +
|
||||
metadataString +
|
||||
"\r\n--" +
|
||||
boundary +
|
||||
"\r\n" +
|
||||
"Content-Type: " +
|
||||
fileMetadata.mimeType +
|
||||
"\r\n\r\n";
|
||||
const postBlobPart = "\r\n--" + boundary + "--";
|
||||
const blob = new Blob([preBlobPart, file, postBlobPart]);
|
||||
const response = await makeServerRequest(url, uploadHeaders, blob);
|
||||
return response.json();
|
||||
}
|
||||
/**
|
||||
* List all uploaded files.
|
||||
*
|
||||
* Any fields set in the optional {@link SingleRequestOptions} parameter will take
|
||||
* precedence over the {@link RequestOptions} values provided at the time of the
|
||||
* {@link GoogleAIFileManager} initialization.
|
||||
*/
|
||||
async listFiles(listParams, requestOptions = {}) {
|
||||
const filesRequestOptions = Object.assign(Object.assign({}, this._requestOptions), requestOptions);
|
||||
const url = new FilesRequestUrl(RpcTask.LIST, this.apiKey, filesRequestOptions);
|
||||
if (listParams === null || listParams === void 0 ? void 0 : listParams.pageSize) {
|
||||
url.appendParam("pageSize", listParams.pageSize.toString());
|
||||
}
|
||||
if (listParams === null || listParams === void 0 ? void 0 : listParams.pageToken) {
|
||||
url.appendParam("pageToken", listParams.pageToken);
|
||||
}
|
||||
const uploadHeaders = getHeaders(url);
|
||||
const response = await makeServerRequest(url, uploadHeaders);
|
||||
return response.json();
|
||||
}
|
||||
/**
|
||||
* Get metadata for file with given ID.
|
||||
*
|
||||
* Any fields set in the optional {@link SingleRequestOptions} parameter will take
|
||||
* precedence over the {@link RequestOptions} values provided at the time of the
|
||||
* {@link GoogleAIFileManager} initialization.
|
||||
*/
|
||||
async getFile(fileId, requestOptions = {}) {
|
||||
const filesRequestOptions = Object.assign(Object.assign({}, this._requestOptions), requestOptions);
|
||||
const url = new FilesRequestUrl(RpcTask.GET, this.apiKey, filesRequestOptions);
|
||||
url.appendPath(parseFileId(fileId));
|
||||
const uploadHeaders = getHeaders(url);
|
||||
const response = await makeServerRequest(url, uploadHeaders);
|
||||
return response.json();
|
||||
}
|
||||
/**
|
||||
* Delete file with given ID.
|
||||
*/
|
||||
async deleteFile(fileId) {
|
||||
const url = new FilesRequestUrl(RpcTask.DELETE, this.apiKey, this._requestOptions);
|
||||
url.appendPath(parseFileId(fileId));
|
||||
const uploadHeaders = getHeaders(url);
|
||||
await makeServerRequest(url, uploadHeaders);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* If fileId is prepended with "files/", remove prefix
|
||||
*/
|
||||
function parseFileId(fileId) {
|
||||
if (fileId.startsWith("files/")) {
|
||||
return fileId.split("files/")[1];
|
||||
}
|
||||
if (!fileId) {
|
||||
throw new GoogleGenerativeAIError(`Invalid fileId ${fileId}. ` +
|
||||
`Must be in the format "files/filename" or "filename"`);
|
||||
}
|
||||
return fileId;
|
||||
}
|
||||
function generateBoundary() {
|
||||
let str = "";
|
||||
for (let i = 0; i < 2; i++) {
|
||||
str = str + Math.random().toString().slice(2);
|
||||
}
|
||||
return str;
|
||||
}
|
||||
function getUploadMetadata(inputMetadata) {
|
||||
if (!inputMetadata.mimeType) {
|
||||
throw new GoogleGenerativeAIRequestInputError("Must provide a mimeType.");
|
||||
}
|
||||
const uploadMetadata = {
|
||||
mimeType: inputMetadata.mimeType,
|
||||
displayName: inputMetadata.displayName,
|
||||
};
|
||||
if (inputMetadata.name) {
|
||||
uploadMetadata.name = inputMetadata.name.includes("/")
|
||||
? inputMetadata.name
|
||||
: `files/${inputMetadata.name}`;
|
||||
}
|
||||
return uploadMetadata;
|
||||
}
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
function formatSystemInstruction(input) {
|
||||
// null or undefined
|
||||
if (input == null) {
|
||||
return undefined;
|
||||
}
|
||||
else if (typeof input === "string") {
|
||||
return { role: "system", parts: [{ text: input }] };
|
||||
}
|
||||
else if (input.text) {
|
||||
return { role: "system", parts: [input] };
|
||||
}
|
||||
else if (input.parts) {
|
||||
if (!input.role) {
|
||||
return { role: "system", parts: input.parts };
|
||||
}
|
||||
else {
|
||||
return input;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* Class for managing GoogleAI content caches.
|
||||
* @public
|
||||
*/
|
||||
class GoogleAICacheManager {
|
||||
constructor(apiKey, _requestOptions) {
|
||||
this.apiKey = apiKey;
|
||||
this._requestOptions = _requestOptions;
|
||||
}
|
||||
/**
|
||||
* Upload a new content cache
|
||||
*/
|
||||
async create(createOptions) {
|
||||
const newCachedContent = Object.assign({}, createOptions);
|
||||
if (createOptions.ttlSeconds) {
|
||||
if (createOptions.expireTime) {
|
||||
throw new GoogleGenerativeAIRequestInputError("You cannot specify both `ttlSeconds` and `expireTime` when creating" +
|
||||
" a content cache. You must choose one.");
|
||||
}
|
||||
if (createOptions.systemInstruction) {
|
||||
newCachedContent.systemInstruction = formatSystemInstruction(createOptions.systemInstruction);
|
||||
}
|
||||
newCachedContent.ttl = createOptions.ttlSeconds.toString() + "s";
|
||||
delete newCachedContent.ttlSeconds;
|
||||
}
|
||||
if (!newCachedContent.model) {
|
||||
throw new GoogleGenerativeAIRequestInputError("Cached content must contain a `model` field.");
|
||||
}
|
||||
if (!newCachedContent.model.includes("/")) {
|
||||
// If path is not included, assume it's a non-tuned model.
|
||||
newCachedContent.model = `models/${newCachedContent.model}`;
|
||||
}
|
||||
const url = new CachedContentUrl(RpcTask.CREATE, this.apiKey, this._requestOptions);
|
||||
const headers = getHeaders(url);
|
||||
const response = await makeServerRequest(url, headers, JSON.stringify(newCachedContent));
|
||||
return response.json();
|
||||
}
|
||||
/**
|
||||
* List all uploaded content caches
|
||||
*/
|
||||
async list(listParams) {
|
||||
const url = new CachedContentUrl(RpcTask.LIST, this.apiKey, this._requestOptions);
|
||||
if (listParams === null || listParams === void 0 ? void 0 : listParams.pageSize) {
|
||||
url.appendParam("pageSize", listParams.pageSize.toString());
|
||||
}
|
||||
if (listParams === null || listParams === void 0 ? void 0 : listParams.pageToken) {
|
||||
url.appendParam("pageToken", listParams.pageToken);
|
||||
}
|
||||
const headers = getHeaders(url);
|
||||
const response = await makeServerRequest(url, headers);
|
||||
return response.json();
|
||||
}
|
||||
/**
|
||||
* Get a content cache
|
||||
*/
|
||||
async get(name) {
|
||||
const url = new CachedContentUrl(RpcTask.GET, this.apiKey, this._requestOptions);
|
||||
url.appendPath(parseCacheName(name));
|
||||
const headers = getHeaders(url);
|
||||
const response = await makeServerRequest(url, headers);
|
||||
return response.json();
|
||||
}
|
||||
/**
|
||||
* Update an existing content cache
|
||||
*/
|
||||
async update(name, updateParams) {
|
||||
const url = new CachedContentUrl(RpcTask.UPDATE, this.apiKey, this._requestOptions);
|
||||
url.appendPath(parseCacheName(name));
|
||||
const headers = getHeaders(url);
|
||||
const formattedCachedContent = Object.assign({}, updateParams.cachedContent);
|
||||
if (updateParams.cachedContent.ttlSeconds) {
|
||||
formattedCachedContent.ttl =
|
||||
updateParams.cachedContent.ttlSeconds.toString() + "s";
|
||||
delete formattedCachedContent.ttlSeconds;
|
||||
}
|
||||
if (updateParams.updateMask) {
|
||||
url.appendParam("update_mask", updateParams.updateMask.map((prop) => camelToSnake(prop)).join(","));
|
||||
}
|
||||
const response = await makeServerRequest(url, headers, JSON.stringify(formattedCachedContent));
|
||||
return response.json();
|
||||
}
|
||||
/**
|
||||
* Delete content cache with given name
|
||||
*/
|
||||
async delete(name) {
|
||||
const url = new CachedContentUrl(RpcTask.DELETE, this.apiKey, this._requestOptions);
|
||||
url.appendPath(parseCacheName(name));
|
||||
const headers = getHeaders(url);
|
||||
await makeServerRequest(url, headers);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* If cache name is prepended with "cachedContents/", remove prefix
|
||||
*/
|
||||
function parseCacheName(name) {
|
||||
if (name.startsWith("cachedContents/")) {
|
||||
return name.split("cachedContents/")[1];
|
||||
}
|
||||
if (!name) {
|
||||
throw new GoogleGenerativeAIError(`Invalid name ${name}. ` +
|
||||
`Must be in the format "cachedContents/name" or "name"`);
|
||||
}
|
||||
return name;
|
||||
}
|
||||
function camelToSnake(str) {
|
||||
return str.replace(/[A-Z]/g, (letter) => `_${letter.toLowerCase()}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* Processing state of the `File`.
|
||||
* @public
|
||||
*/
|
||||
exports.FileState = void 0;
|
||||
(function (FileState) {
|
||||
// The default value. This value is used if the state is omitted.
|
||||
FileState["STATE_UNSPECIFIED"] = "STATE_UNSPECIFIED";
|
||||
// File is being processed and cannot be used for inference yet.
|
||||
FileState["PROCESSING"] = "PROCESSING";
|
||||
// File is processed and available for inference.
|
||||
FileState["ACTIVE"] = "ACTIVE";
|
||||
// File failed processing.
|
||||
FileState["FAILED"] = "FAILED";
|
||||
})(exports.FileState || (exports.FileState = {}));
|
||||
|
||||
/**
|
||||
* Contains the list of OpenAPI data types
|
||||
* as defined by https://swagger.io/docs/specification/data-models/data-types/
|
||||
* @public
|
||||
*/
|
||||
exports.SchemaType = void 0;
|
||||
(function (SchemaType) {
|
||||
/** String type. */
|
||||
SchemaType["STRING"] = "string";
|
||||
/** Number type. */
|
||||
SchemaType["NUMBER"] = "number";
|
||||
/** Integer type. */
|
||||
SchemaType["INTEGER"] = "integer";
|
||||
/** Boolean type. */
|
||||
SchemaType["BOOLEAN"] = "boolean";
|
||||
/** Array type. */
|
||||
SchemaType["ARRAY"] = "array";
|
||||
/** Object type. */
|
||||
SchemaType["OBJECT"] = "object";
|
||||
})(exports.SchemaType || (exports.SchemaType = {}));
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
exports.ExecutableCodeLanguage = void 0;
|
||||
(function (ExecutableCodeLanguage) {
|
||||
ExecutableCodeLanguage["LANGUAGE_UNSPECIFIED"] = "language_unspecified";
|
||||
ExecutableCodeLanguage["PYTHON"] = "python";
|
||||
})(exports.ExecutableCodeLanguage || (exports.ExecutableCodeLanguage = {}));
|
||||
/**
|
||||
* Possible outcomes of code execution.
|
||||
* @public
|
||||
*/
|
||||
exports.Outcome = void 0;
|
||||
(function (Outcome) {
|
||||
/**
|
||||
* Unspecified status. This value should not be used.
|
||||
*/
|
||||
Outcome["OUTCOME_UNSPECIFIED"] = "outcome_unspecified";
|
||||
/**
|
||||
* Code execution completed successfully.
|
||||
*/
|
||||
Outcome["OUTCOME_OK"] = "outcome_ok";
|
||||
/**
|
||||
* Code execution finished but with a failure. `stderr` should contain the
|
||||
* reason.
|
||||
*/
|
||||
Outcome["OUTCOME_FAILED"] = "outcome_failed";
|
||||
/**
|
||||
* Code execution ran for too long, and was cancelled. There may or may not
|
||||
* be a partial output present.
|
||||
*/
|
||||
Outcome["OUTCOME_DEADLINE_EXCEEDED"] = "outcome_deadline_exceeded";
|
||||
})(exports.Outcome || (exports.Outcome = {}));
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* Possible roles.
|
||||
* @public
|
||||
*/
|
||||
/**
|
||||
* Harm categories that would cause prompts or candidates to be blocked.
|
||||
* @public
|
||||
*/
|
||||
var HarmCategory;
|
||||
(function (HarmCategory) {
|
||||
HarmCategory["HARM_CATEGORY_UNSPECIFIED"] = "HARM_CATEGORY_UNSPECIFIED";
|
||||
HarmCategory["HARM_CATEGORY_HATE_SPEECH"] = "HARM_CATEGORY_HATE_SPEECH";
|
||||
HarmCategory["HARM_CATEGORY_SEXUALLY_EXPLICIT"] = "HARM_CATEGORY_SEXUALLY_EXPLICIT";
|
||||
HarmCategory["HARM_CATEGORY_HARASSMENT"] = "HARM_CATEGORY_HARASSMENT";
|
||||
HarmCategory["HARM_CATEGORY_DANGEROUS_CONTENT"] = "HARM_CATEGORY_DANGEROUS_CONTENT";
|
||||
})(HarmCategory || (HarmCategory = {}));
|
||||
/**
|
||||
* Threshold above which a prompt or candidate will be blocked.
|
||||
* @public
|
||||
*/
|
||||
var HarmBlockThreshold;
|
||||
(function (HarmBlockThreshold) {
|
||||
// Threshold is unspecified.
|
||||
HarmBlockThreshold["HARM_BLOCK_THRESHOLD_UNSPECIFIED"] = "HARM_BLOCK_THRESHOLD_UNSPECIFIED";
|
||||
// Content with NEGLIGIBLE will be allowed.
|
||||
HarmBlockThreshold["BLOCK_LOW_AND_ABOVE"] = "BLOCK_LOW_AND_ABOVE";
|
||||
// Content with NEGLIGIBLE and LOW will be allowed.
|
||||
HarmBlockThreshold["BLOCK_MEDIUM_AND_ABOVE"] = "BLOCK_MEDIUM_AND_ABOVE";
|
||||
// Content with NEGLIGIBLE, LOW, and MEDIUM will be allowed.
|
||||
HarmBlockThreshold["BLOCK_ONLY_HIGH"] = "BLOCK_ONLY_HIGH";
|
||||
// All content will be allowed.
|
||||
HarmBlockThreshold["BLOCK_NONE"] = "BLOCK_NONE";
|
||||
})(HarmBlockThreshold || (HarmBlockThreshold = {}));
|
||||
/**
|
||||
* Probability that a prompt or candidate matches a harm category.
|
||||
* @public
|
||||
*/
|
||||
var HarmProbability;
|
||||
(function (HarmProbability) {
|
||||
// Probability is unspecified.
|
||||
HarmProbability["HARM_PROBABILITY_UNSPECIFIED"] = "HARM_PROBABILITY_UNSPECIFIED";
|
||||
// Content has a negligible chance of being unsafe.
|
||||
HarmProbability["NEGLIGIBLE"] = "NEGLIGIBLE";
|
||||
// Content has a low chance of being unsafe.
|
||||
HarmProbability["LOW"] = "LOW";
|
||||
// Content has a medium chance of being unsafe.
|
||||
HarmProbability["MEDIUM"] = "MEDIUM";
|
||||
// Content has a high chance of being unsafe.
|
||||
HarmProbability["HIGH"] = "HIGH";
|
||||
})(HarmProbability || (HarmProbability = {}));
|
||||
/**
|
||||
* Reason that a prompt was blocked.
|
||||
* @public
|
||||
*/
|
||||
var BlockReason;
|
||||
(function (BlockReason) {
|
||||
// A blocked reason was not specified.
|
||||
BlockReason["BLOCKED_REASON_UNSPECIFIED"] = "BLOCKED_REASON_UNSPECIFIED";
|
||||
// Content was blocked by safety settings.
|
||||
BlockReason["SAFETY"] = "SAFETY";
|
||||
// Content was blocked, but the reason is uncategorized.
|
||||
BlockReason["OTHER"] = "OTHER";
|
||||
})(BlockReason || (BlockReason = {}));
|
||||
/**
|
||||
* Reason that a candidate finished.
|
||||
* @public
|
||||
*/
|
||||
var FinishReason;
|
||||
(function (FinishReason) {
|
||||
// Default value. This value is unused.
|
||||
FinishReason["FINISH_REASON_UNSPECIFIED"] = "FINISH_REASON_UNSPECIFIED";
|
||||
// Natural stop point of the model or provided stop sequence.
|
||||
FinishReason["STOP"] = "STOP";
|
||||
// The maximum number of tokens as specified in the request was reached.
|
||||
FinishReason["MAX_TOKENS"] = "MAX_TOKENS";
|
||||
// The candidate content was flagged for safety reasons.
|
||||
FinishReason["SAFETY"] = "SAFETY";
|
||||
// The candidate content was flagged for recitation reasons.
|
||||
FinishReason["RECITATION"] = "RECITATION";
|
||||
// The candidate content was flagged for using an unsupported language.
|
||||
FinishReason["LANGUAGE"] = "LANGUAGE";
|
||||
// Unknown reason.
|
||||
FinishReason["OTHER"] = "OTHER";
|
||||
})(FinishReason || (FinishReason = {}));
|
||||
/**
|
||||
* Task type for embedding content.
|
||||
* @public
|
||||
*/
|
||||
var TaskType;
|
||||
(function (TaskType) {
|
||||
TaskType["TASK_TYPE_UNSPECIFIED"] = "TASK_TYPE_UNSPECIFIED";
|
||||
TaskType["RETRIEVAL_QUERY"] = "RETRIEVAL_QUERY";
|
||||
TaskType["RETRIEVAL_DOCUMENT"] = "RETRIEVAL_DOCUMENT";
|
||||
TaskType["SEMANTIC_SIMILARITY"] = "SEMANTIC_SIMILARITY";
|
||||
TaskType["CLASSIFICATION"] = "CLASSIFICATION";
|
||||
TaskType["CLUSTERING"] = "CLUSTERING";
|
||||
})(TaskType || (TaskType = {}));
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
exports.FunctionCallingMode = void 0;
|
||||
(function (FunctionCallingMode) {
|
||||
// Unspecified function calling mode. This value should not be used.
|
||||
FunctionCallingMode["MODE_UNSPECIFIED"] = "MODE_UNSPECIFIED";
|
||||
// Default model behavior, model decides to predict either a function call
|
||||
// or a natural language repspose.
|
||||
FunctionCallingMode["AUTO"] = "AUTO";
|
||||
// Model is constrained to always predicting a function call only.
|
||||
// If "allowed_function_names" are set, the predicted function call will be
|
||||
// limited to any one of "allowed_function_names", else the predicted
|
||||
// function call will be any one of the provided "function_declarations".
|
||||
FunctionCallingMode["ANY"] = "ANY";
|
||||
// Model will not predict any function call. Model behavior is same as when
|
||||
// not passing any function declarations.
|
||||
FunctionCallingMode["NONE"] = "NONE";
|
||||
})(exports.FunctionCallingMode || (exports.FunctionCallingMode = {}));
|
||||
/**
|
||||
* The mode of the predictor to be used in dynamic retrieval.
|
||||
* @public
|
||||
*/
|
||||
var DynamicRetrievalMode;
|
||||
(function (DynamicRetrievalMode) {
|
||||
// Unspecified function calling mode. This value should not be used.
|
||||
DynamicRetrievalMode["MODE_UNSPECIFIED"] = "MODE_UNSPECIFIED";
|
||||
// Run retrieval only when system decides it is necessary.
|
||||
DynamicRetrievalMode["MODE_DYNAMIC"] = "MODE_DYNAMIC";
|
||||
})(DynamicRetrievalMode || (DynamicRetrievalMode = {}));
|
||||
|
||||
exports.GoogleAICacheManager = GoogleAICacheManager;
|
||||
exports.GoogleAIFileManager = GoogleAIFileManager;
|
||||
//# sourceMappingURL=index.js.map
|
||||
1
node_modules/@google/generative-ai/dist/server/index.js.map
generated
vendored
Normal file
1
node_modules/@google/generative-ai/dist/server/index.js.map
generated
vendored
Normal file
@ -0,0 +1 @@
|
||||
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
||||
794
node_modules/@google/generative-ai/dist/server/index.mjs
generated
vendored
Normal file
794
node_modules/@google/generative-ai/dist/server/index.mjs
generated
vendored
Normal file
@ -0,0 +1,794 @@
|
||||
import { readFileSync } from 'fs';
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* Basic error type for this SDK.
|
||||
* @public
|
||||
*/
|
||||
class GoogleGenerativeAIError extends Error {
|
||||
constructor(message) {
|
||||
super(`[GoogleGenerativeAI Error]: ${message}`);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Error class covering HTTP errors when calling the server. Includes HTTP
|
||||
* status, statusText, and optional details, if provided in the server response.
|
||||
* @public
|
||||
*/
|
||||
class GoogleGenerativeAIFetchError extends GoogleGenerativeAIError {
|
||||
constructor(message, status, statusText, errorDetails) {
|
||||
super(message);
|
||||
this.status = status;
|
||||
this.statusText = statusText;
|
||||
this.errorDetails = errorDetails;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Errors in the contents of a request originating from user input.
|
||||
* @public
|
||||
*/
|
||||
class GoogleGenerativeAIRequestInputError extends GoogleGenerativeAIError {
|
||||
}
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
const DEFAULT_BASE_URL = "https://generativelanguage.googleapis.com";
|
||||
const DEFAULT_API_VERSION = "v1beta";
|
||||
/**
|
||||
* We can't `require` package.json if this runs on web. We will use rollup to
|
||||
* swap in the version number here at build time.
|
||||
*/
|
||||
const PACKAGE_VERSION = "0.21.0";
|
||||
const PACKAGE_LOG_HEADER = "genai-js";
|
||||
var Task;
|
||||
(function (Task) {
|
||||
Task["GENERATE_CONTENT"] = "generateContent";
|
||||
Task["STREAM_GENERATE_CONTENT"] = "streamGenerateContent";
|
||||
Task["COUNT_TOKENS"] = "countTokens";
|
||||
Task["EMBED_CONTENT"] = "embedContent";
|
||||
Task["BATCH_EMBED_CONTENTS"] = "batchEmbedContents";
|
||||
})(Task || (Task = {}));
|
||||
/**
|
||||
* Simple, but may become more complex if we add more versions to log.
|
||||
*/
|
||||
function getClientHeaders(requestOptions) {
|
||||
const clientHeaders = [];
|
||||
if (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.apiClient) {
|
||||
clientHeaders.push(requestOptions.apiClient);
|
||||
}
|
||||
clientHeaders.push(`${PACKAGE_LOG_HEADER}/${PACKAGE_VERSION}`);
|
||||
return clientHeaders.join(" ");
|
||||
}
|
||||
async function makeRequest(url, fetchOptions, fetchFn = fetch) {
|
||||
let response;
|
||||
try {
|
||||
response = await fetchFn(url, fetchOptions);
|
||||
}
|
||||
catch (e) {
|
||||
handleResponseError(e, url);
|
||||
}
|
||||
if (!response.ok) {
|
||||
await handleResponseNotOk(response, url);
|
||||
}
|
||||
return response;
|
||||
}
|
||||
function handleResponseError(e, url) {
|
||||
let err = e;
|
||||
if (!(e instanceof GoogleGenerativeAIFetchError ||
|
||||
e instanceof GoogleGenerativeAIRequestInputError)) {
|
||||
err = new GoogleGenerativeAIError(`Error fetching from ${url.toString()}: ${e.message}`);
|
||||
err.stack = e.stack;
|
||||
}
|
||||
throw err;
|
||||
}
|
||||
async function handleResponseNotOk(response, url) {
|
||||
let message = "";
|
||||
let errorDetails;
|
||||
try {
|
||||
const json = await response.json();
|
||||
message = json.error.message;
|
||||
if (json.error.details) {
|
||||
message += ` ${JSON.stringify(json.error.details)}`;
|
||||
errorDetails = json.error.details;
|
||||
}
|
||||
}
|
||||
catch (e) {
|
||||
// ignored
|
||||
}
|
||||
throw new GoogleGenerativeAIFetchError(`Error fetching from ${url.toString()}: [${response.status} ${response.statusText}] ${message}`, response.status, response.statusText, errorDetails);
|
||||
}
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
var RpcTask;
|
||||
(function (RpcTask) {
|
||||
RpcTask["UPLOAD"] = "upload";
|
||||
RpcTask["LIST"] = "list";
|
||||
RpcTask["GET"] = "get";
|
||||
RpcTask["DELETE"] = "delete";
|
||||
RpcTask["UPDATE"] = "update";
|
||||
RpcTask["CREATE"] = "create";
|
||||
})(RpcTask || (RpcTask = {}));
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
const taskToMethod = {
|
||||
[RpcTask.UPLOAD]: "POST",
|
||||
[RpcTask.LIST]: "GET",
|
||||
[RpcTask.GET]: "GET",
|
||||
[RpcTask.DELETE]: "DELETE",
|
||||
[RpcTask.UPDATE]: "PATCH",
|
||||
[RpcTask.CREATE]: "POST",
|
||||
};
|
||||
class ServerRequestUrl {
|
||||
constructor(task, apiKey, requestOptions) {
|
||||
this.task = task;
|
||||
this.apiKey = apiKey;
|
||||
this.requestOptions = requestOptions;
|
||||
}
|
||||
appendPath(path) {
|
||||
this._url.pathname = this._url.pathname + `/${path}`;
|
||||
}
|
||||
appendParam(key, value) {
|
||||
this._url.searchParams.append(key, value);
|
||||
}
|
||||
toString() {
|
||||
return this._url.toString();
|
||||
}
|
||||
}
|
||||
class CachedContentUrl extends ServerRequestUrl {
|
||||
constructor(task, apiKey, requestOptions) {
|
||||
var _a, _b;
|
||||
super(task, apiKey, requestOptions);
|
||||
this.task = task;
|
||||
this.apiKey = apiKey;
|
||||
this.requestOptions = requestOptions;
|
||||
const apiVersion = ((_a = this.requestOptions) === null || _a === void 0 ? void 0 : _a.apiVersion) || DEFAULT_API_VERSION;
|
||||
const baseUrl = ((_b = this.requestOptions) === null || _b === void 0 ? void 0 : _b.baseUrl) || DEFAULT_BASE_URL;
|
||||
let initialUrl = baseUrl;
|
||||
initialUrl += `/${apiVersion}/cachedContents`;
|
||||
this._url = new URL(initialUrl);
|
||||
}
|
||||
}
|
||||
class FilesRequestUrl extends ServerRequestUrl {
|
||||
constructor(task, apiKey, requestOptions) {
|
||||
var _a, _b;
|
||||
super(task, apiKey, requestOptions);
|
||||
this.task = task;
|
||||
this.apiKey = apiKey;
|
||||
this.requestOptions = requestOptions;
|
||||
const apiVersion = ((_a = this.requestOptions) === null || _a === void 0 ? void 0 : _a.apiVersion) || DEFAULT_API_VERSION;
|
||||
const baseUrl = ((_b = this.requestOptions) === null || _b === void 0 ? void 0 : _b.baseUrl) || DEFAULT_BASE_URL;
|
||||
let initialUrl = baseUrl;
|
||||
if (this.task === RpcTask.UPLOAD) {
|
||||
initialUrl += `/upload`;
|
||||
}
|
||||
initialUrl += `/${apiVersion}/files`;
|
||||
this._url = new URL(initialUrl);
|
||||
}
|
||||
}
|
||||
function getHeaders(url) {
|
||||
const headers = new Headers();
|
||||
headers.append("x-goog-api-client", getClientHeaders(url.requestOptions));
|
||||
headers.append("x-goog-api-key", url.apiKey);
|
||||
return headers;
|
||||
}
|
||||
async function makeServerRequest(url, headers, body, fetchFn = fetch) {
|
||||
const requestInit = {
|
||||
method: taskToMethod[url.task],
|
||||
headers,
|
||||
};
|
||||
if (body) {
|
||||
requestInit.body = body;
|
||||
}
|
||||
const signal = getSignal(url.requestOptions);
|
||||
if (signal) {
|
||||
requestInit.signal = signal;
|
||||
}
|
||||
return makeRequest(url.toString(), requestInit, fetchFn);
|
||||
}
|
||||
/**
|
||||
* Create an AbortSignal based on the timeout and signal in the
|
||||
* RequestOptions.
|
||||
*/
|
||||
function getSignal(requestOptions) {
|
||||
if ((requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.signal) !== undefined || (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeout) >= 0) {
|
||||
const controller = new AbortController();
|
||||
if ((requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeout) >= 0) {
|
||||
setTimeout(() => controller.abort(), requestOptions.timeout);
|
||||
}
|
||||
if (requestOptions.signal) {
|
||||
requestOptions.signal.addEventListener("abort", () => {
|
||||
controller.abort();
|
||||
});
|
||||
}
|
||||
return controller.signal;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* Class for managing GoogleAI file uploads.
|
||||
* @public
|
||||
*/
|
||||
class GoogleAIFileManager {
|
||||
constructor(apiKey, _requestOptions = {}) {
|
||||
this.apiKey = apiKey;
|
||||
this._requestOptions = _requestOptions;
|
||||
}
|
||||
/**
|
||||
* Upload a file.
|
||||
*/
|
||||
async uploadFile(filePath, fileMetadata) {
|
||||
const file = readFileSync(filePath);
|
||||
const url = new FilesRequestUrl(RpcTask.UPLOAD, this.apiKey, this._requestOptions);
|
||||
const uploadHeaders = getHeaders(url);
|
||||
const boundary = generateBoundary();
|
||||
uploadHeaders.append("X-Goog-Upload-Protocol", "multipart");
|
||||
uploadHeaders.append("Content-Type", `multipart/related; boundary=${boundary}`);
|
||||
const uploadMetadata = getUploadMetadata(fileMetadata);
|
||||
// Multipart formatting code taken from @firebase/storage
|
||||
const metadataString = JSON.stringify({ file: uploadMetadata });
|
||||
const preBlobPart = "--" +
|
||||
boundary +
|
||||
"\r\n" +
|
||||
"Content-Type: application/json; charset=utf-8\r\n\r\n" +
|
||||
metadataString +
|
||||
"\r\n--" +
|
||||
boundary +
|
||||
"\r\n" +
|
||||
"Content-Type: " +
|
||||
fileMetadata.mimeType +
|
||||
"\r\n\r\n";
|
||||
const postBlobPart = "\r\n--" + boundary + "--";
|
||||
const blob = new Blob([preBlobPart, file, postBlobPart]);
|
||||
const response = await makeServerRequest(url, uploadHeaders, blob);
|
||||
return response.json();
|
||||
}
|
||||
/**
|
||||
* List all uploaded files.
|
||||
*
|
||||
* Any fields set in the optional {@link SingleRequestOptions} parameter will take
|
||||
* precedence over the {@link RequestOptions} values provided at the time of the
|
||||
* {@link GoogleAIFileManager} initialization.
|
||||
*/
|
||||
async listFiles(listParams, requestOptions = {}) {
|
||||
const filesRequestOptions = Object.assign(Object.assign({}, this._requestOptions), requestOptions);
|
||||
const url = new FilesRequestUrl(RpcTask.LIST, this.apiKey, filesRequestOptions);
|
||||
if (listParams === null || listParams === void 0 ? void 0 : listParams.pageSize) {
|
||||
url.appendParam("pageSize", listParams.pageSize.toString());
|
||||
}
|
||||
if (listParams === null || listParams === void 0 ? void 0 : listParams.pageToken) {
|
||||
url.appendParam("pageToken", listParams.pageToken);
|
||||
}
|
||||
const uploadHeaders = getHeaders(url);
|
||||
const response = await makeServerRequest(url, uploadHeaders);
|
||||
return response.json();
|
||||
}
|
||||
/**
|
||||
* Get metadata for file with given ID.
|
||||
*
|
||||
* Any fields set in the optional {@link SingleRequestOptions} parameter will take
|
||||
* precedence over the {@link RequestOptions} values provided at the time of the
|
||||
* {@link GoogleAIFileManager} initialization.
|
||||
*/
|
||||
async getFile(fileId, requestOptions = {}) {
|
||||
const filesRequestOptions = Object.assign(Object.assign({}, this._requestOptions), requestOptions);
|
||||
const url = new FilesRequestUrl(RpcTask.GET, this.apiKey, filesRequestOptions);
|
||||
url.appendPath(parseFileId(fileId));
|
||||
const uploadHeaders = getHeaders(url);
|
||||
const response = await makeServerRequest(url, uploadHeaders);
|
||||
return response.json();
|
||||
}
|
||||
/**
|
||||
* Delete file with given ID.
|
||||
*/
|
||||
async deleteFile(fileId) {
|
||||
const url = new FilesRequestUrl(RpcTask.DELETE, this.apiKey, this._requestOptions);
|
||||
url.appendPath(parseFileId(fileId));
|
||||
const uploadHeaders = getHeaders(url);
|
||||
await makeServerRequest(url, uploadHeaders);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* If fileId is prepended with "files/", remove prefix
|
||||
*/
|
||||
function parseFileId(fileId) {
|
||||
if (fileId.startsWith("files/")) {
|
||||
return fileId.split("files/")[1];
|
||||
}
|
||||
if (!fileId) {
|
||||
throw new GoogleGenerativeAIError(`Invalid fileId ${fileId}. ` +
|
||||
`Must be in the format "files/filename" or "filename"`);
|
||||
}
|
||||
return fileId;
|
||||
}
|
||||
function generateBoundary() {
|
||||
let str = "";
|
||||
for (let i = 0; i < 2; i++) {
|
||||
str = str + Math.random().toString().slice(2);
|
||||
}
|
||||
return str;
|
||||
}
|
||||
function getUploadMetadata(inputMetadata) {
|
||||
if (!inputMetadata.mimeType) {
|
||||
throw new GoogleGenerativeAIRequestInputError("Must provide a mimeType.");
|
||||
}
|
||||
const uploadMetadata = {
|
||||
mimeType: inputMetadata.mimeType,
|
||||
displayName: inputMetadata.displayName,
|
||||
};
|
||||
if (inputMetadata.name) {
|
||||
uploadMetadata.name = inputMetadata.name.includes("/")
|
||||
? inputMetadata.name
|
||||
: `files/${inputMetadata.name}`;
|
||||
}
|
||||
return uploadMetadata;
|
||||
}
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
function formatSystemInstruction(input) {
|
||||
// null or undefined
|
||||
if (input == null) {
|
||||
return undefined;
|
||||
}
|
||||
else if (typeof input === "string") {
|
||||
return { role: "system", parts: [{ text: input }] };
|
||||
}
|
||||
else if (input.text) {
|
||||
return { role: "system", parts: [input] };
|
||||
}
|
||||
else if (input.parts) {
|
||||
if (!input.role) {
|
||||
return { role: "system", parts: input.parts };
|
||||
}
|
||||
else {
|
||||
return input;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* Class for managing GoogleAI content caches.
|
||||
* @public
|
||||
*/
|
||||
class GoogleAICacheManager {
|
||||
constructor(apiKey, _requestOptions) {
|
||||
this.apiKey = apiKey;
|
||||
this._requestOptions = _requestOptions;
|
||||
}
|
||||
/**
|
||||
* Upload a new content cache
|
||||
*/
|
||||
async create(createOptions) {
|
||||
const newCachedContent = Object.assign({}, createOptions);
|
||||
if (createOptions.ttlSeconds) {
|
||||
if (createOptions.expireTime) {
|
||||
throw new GoogleGenerativeAIRequestInputError("You cannot specify both `ttlSeconds` and `expireTime` when creating" +
|
||||
" a content cache. You must choose one.");
|
||||
}
|
||||
if (createOptions.systemInstruction) {
|
||||
newCachedContent.systemInstruction = formatSystemInstruction(createOptions.systemInstruction);
|
||||
}
|
||||
newCachedContent.ttl = createOptions.ttlSeconds.toString() + "s";
|
||||
delete newCachedContent.ttlSeconds;
|
||||
}
|
||||
if (!newCachedContent.model) {
|
||||
throw new GoogleGenerativeAIRequestInputError("Cached content must contain a `model` field.");
|
||||
}
|
||||
if (!newCachedContent.model.includes("/")) {
|
||||
// If path is not included, assume it's a non-tuned model.
|
||||
newCachedContent.model = `models/${newCachedContent.model}`;
|
||||
}
|
||||
const url = new CachedContentUrl(RpcTask.CREATE, this.apiKey, this._requestOptions);
|
||||
const headers = getHeaders(url);
|
||||
const response = await makeServerRequest(url, headers, JSON.stringify(newCachedContent));
|
||||
return response.json();
|
||||
}
|
||||
/**
|
||||
* List all uploaded content caches
|
||||
*/
|
||||
async list(listParams) {
|
||||
const url = new CachedContentUrl(RpcTask.LIST, this.apiKey, this._requestOptions);
|
||||
if (listParams === null || listParams === void 0 ? void 0 : listParams.pageSize) {
|
||||
url.appendParam("pageSize", listParams.pageSize.toString());
|
||||
}
|
||||
if (listParams === null || listParams === void 0 ? void 0 : listParams.pageToken) {
|
||||
url.appendParam("pageToken", listParams.pageToken);
|
||||
}
|
||||
const headers = getHeaders(url);
|
||||
const response = await makeServerRequest(url, headers);
|
||||
return response.json();
|
||||
}
|
||||
/**
|
||||
* Get a content cache
|
||||
*/
|
||||
async get(name) {
|
||||
const url = new CachedContentUrl(RpcTask.GET, this.apiKey, this._requestOptions);
|
||||
url.appendPath(parseCacheName(name));
|
||||
const headers = getHeaders(url);
|
||||
const response = await makeServerRequest(url, headers);
|
||||
return response.json();
|
||||
}
|
||||
/**
|
||||
* Update an existing content cache
|
||||
*/
|
||||
async update(name, updateParams) {
|
||||
const url = new CachedContentUrl(RpcTask.UPDATE, this.apiKey, this._requestOptions);
|
||||
url.appendPath(parseCacheName(name));
|
||||
const headers = getHeaders(url);
|
||||
const formattedCachedContent = Object.assign({}, updateParams.cachedContent);
|
||||
if (updateParams.cachedContent.ttlSeconds) {
|
||||
formattedCachedContent.ttl =
|
||||
updateParams.cachedContent.ttlSeconds.toString() + "s";
|
||||
delete formattedCachedContent.ttlSeconds;
|
||||
}
|
||||
if (updateParams.updateMask) {
|
||||
url.appendParam("update_mask", updateParams.updateMask.map((prop) => camelToSnake(prop)).join(","));
|
||||
}
|
||||
const response = await makeServerRequest(url, headers, JSON.stringify(formattedCachedContent));
|
||||
return response.json();
|
||||
}
|
||||
/**
|
||||
* Delete content cache with given name
|
||||
*/
|
||||
async delete(name) {
|
||||
const url = new CachedContentUrl(RpcTask.DELETE, this.apiKey, this._requestOptions);
|
||||
url.appendPath(parseCacheName(name));
|
||||
const headers = getHeaders(url);
|
||||
await makeServerRequest(url, headers);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* If cache name is prepended with "cachedContents/", remove prefix
|
||||
*/
|
||||
function parseCacheName(name) {
|
||||
if (name.startsWith("cachedContents/")) {
|
||||
return name.split("cachedContents/")[1];
|
||||
}
|
||||
if (!name) {
|
||||
throw new GoogleGenerativeAIError(`Invalid name ${name}. ` +
|
||||
`Must be in the format "cachedContents/name" or "name"`);
|
||||
}
|
||||
return name;
|
||||
}
|
||||
function camelToSnake(str) {
|
||||
return str.replace(/[A-Z]/g, (letter) => `_${letter.toLowerCase()}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* Processing state of the `File`.
|
||||
* @public
|
||||
*/
|
||||
var FileState;
|
||||
(function (FileState) {
|
||||
// The default value. This value is used if the state is omitted.
|
||||
FileState["STATE_UNSPECIFIED"] = "STATE_UNSPECIFIED";
|
||||
// File is being processed and cannot be used for inference yet.
|
||||
FileState["PROCESSING"] = "PROCESSING";
|
||||
// File is processed and available for inference.
|
||||
FileState["ACTIVE"] = "ACTIVE";
|
||||
// File failed processing.
|
||||
FileState["FAILED"] = "FAILED";
|
||||
})(FileState || (FileState = {}));
|
||||
|
||||
/**
|
||||
* Contains the list of OpenAPI data types
|
||||
* as defined by https://swagger.io/docs/specification/data-models/data-types/
|
||||
* @public
|
||||
*/
|
||||
var SchemaType;
|
||||
(function (SchemaType) {
|
||||
/** String type. */
|
||||
SchemaType["STRING"] = "string";
|
||||
/** Number type. */
|
||||
SchemaType["NUMBER"] = "number";
|
||||
/** Integer type. */
|
||||
SchemaType["INTEGER"] = "integer";
|
||||
/** Boolean type. */
|
||||
SchemaType["BOOLEAN"] = "boolean";
|
||||
/** Array type. */
|
||||
SchemaType["ARRAY"] = "array";
|
||||
/** Object type. */
|
||||
SchemaType["OBJECT"] = "object";
|
||||
})(SchemaType || (SchemaType = {}));
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
var ExecutableCodeLanguage;
|
||||
(function (ExecutableCodeLanguage) {
|
||||
ExecutableCodeLanguage["LANGUAGE_UNSPECIFIED"] = "language_unspecified";
|
||||
ExecutableCodeLanguage["PYTHON"] = "python";
|
||||
})(ExecutableCodeLanguage || (ExecutableCodeLanguage = {}));
|
||||
/**
|
||||
* Possible outcomes of code execution.
|
||||
* @public
|
||||
*/
|
||||
var Outcome;
|
||||
(function (Outcome) {
|
||||
/**
|
||||
* Unspecified status. This value should not be used.
|
||||
*/
|
||||
Outcome["OUTCOME_UNSPECIFIED"] = "outcome_unspecified";
|
||||
/**
|
||||
* Code execution completed successfully.
|
||||
*/
|
||||
Outcome["OUTCOME_OK"] = "outcome_ok";
|
||||
/**
|
||||
* Code execution finished but with a failure. `stderr` should contain the
|
||||
* reason.
|
||||
*/
|
||||
Outcome["OUTCOME_FAILED"] = "outcome_failed";
|
||||
/**
|
||||
* Code execution ran for too long, and was cancelled. There may or may not
|
||||
* be a partial output present.
|
||||
*/
|
||||
Outcome["OUTCOME_DEADLINE_EXCEEDED"] = "outcome_deadline_exceeded";
|
||||
})(Outcome || (Outcome = {}));
|
||||
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* Possible roles.
|
||||
* @public
|
||||
*/
|
||||
/**
|
||||
* Harm categories that would cause prompts or candidates to be blocked.
|
||||
* @public
|
||||
*/
|
||||
var HarmCategory;
|
||||
(function (HarmCategory) {
|
||||
HarmCategory["HARM_CATEGORY_UNSPECIFIED"] = "HARM_CATEGORY_UNSPECIFIED";
|
||||
HarmCategory["HARM_CATEGORY_HATE_SPEECH"] = "HARM_CATEGORY_HATE_SPEECH";
|
||||
HarmCategory["HARM_CATEGORY_SEXUALLY_EXPLICIT"] = "HARM_CATEGORY_SEXUALLY_EXPLICIT";
|
||||
HarmCategory["HARM_CATEGORY_HARASSMENT"] = "HARM_CATEGORY_HARASSMENT";
|
||||
HarmCategory["HARM_CATEGORY_DANGEROUS_CONTENT"] = "HARM_CATEGORY_DANGEROUS_CONTENT";
|
||||
})(HarmCategory || (HarmCategory = {}));
|
||||
/**
|
||||
* Threshold above which a prompt or candidate will be blocked.
|
||||
* @public
|
||||
*/
|
||||
var HarmBlockThreshold;
|
||||
(function (HarmBlockThreshold) {
|
||||
// Threshold is unspecified.
|
||||
HarmBlockThreshold["HARM_BLOCK_THRESHOLD_UNSPECIFIED"] = "HARM_BLOCK_THRESHOLD_UNSPECIFIED";
|
||||
// Content with NEGLIGIBLE will be allowed.
|
||||
HarmBlockThreshold["BLOCK_LOW_AND_ABOVE"] = "BLOCK_LOW_AND_ABOVE";
|
||||
// Content with NEGLIGIBLE and LOW will be allowed.
|
||||
HarmBlockThreshold["BLOCK_MEDIUM_AND_ABOVE"] = "BLOCK_MEDIUM_AND_ABOVE";
|
||||
// Content with NEGLIGIBLE, LOW, and MEDIUM will be allowed.
|
||||
HarmBlockThreshold["BLOCK_ONLY_HIGH"] = "BLOCK_ONLY_HIGH";
|
||||
// All content will be allowed.
|
||||
HarmBlockThreshold["BLOCK_NONE"] = "BLOCK_NONE";
|
||||
})(HarmBlockThreshold || (HarmBlockThreshold = {}));
|
||||
/**
|
||||
* Probability that a prompt or candidate matches a harm category.
|
||||
* @public
|
||||
*/
|
||||
var HarmProbability;
|
||||
(function (HarmProbability) {
|
||||
// Probability is unspecified.
|
||||
HarmProbability["HARM_PROBABILITY_UNSPECIFIED"] = "HARM_PROBABILITY_UNSPECIFIED";
|
||||
// Content has a negligible chance of being unsafe.
|
||||
HarmProbability["NEGLIGIBLE"] = "NEGLIGIBLE";
|
||||
// Content has a low chance of being unsafe.
|
||||
HarmProbability["LOW"] = "LOW";
|
||||
// Content has a medium chance of being unsafe.
|
||||
HarmProbability["MEDIUM"] = "MEDIUM";
|
||||
// Content has a high chance of being unsafe.
|
||||
HarmProbability["HIGH"] = "HIGH";
|
||||
})(HarmProbability || (HarmProbability = {}));
|
||||
/**
|
||||
* Reason that a prompt was blocked.
|
||||
* @public
|
||||
*/
|
||||
var BlockReason;
|
||||
(function (BlockReason) {
|
||||
// A blocked reason was not specified.
|
||||
BlockReason["BLOCKED_REASON_UNSPECIFIED"] = "BLOCKED_REASON_UNSPECIFIED";
|
||||
// Content was blocked by safety settings.
|
||||
BlockReason["SAFETY"] = "SAFETY";
|
||||
// Content was blocked, but the reason is uncategorized.
|
||||
BlockReason["OTHER"] = "OTHER";
|
||||
})(BlockReason || (BlockReason = {}));
|
||||
/**
|
||||
* Reason that a candidate finished.
|
||||
* @public
|
||||
*/
|
||||
var FinishReason;
|
||||
(function (FinishReason) {
|
||||
// Default value. This value is unused.
|
||||
FinishReason["FINISH_REASON_UNSPECIFIED"] = "FINISH_REASON_UNSPECIFIED";
|
||||
// Natural stop point of the model or provided stop sequence.
|
||||
FinishReason["STOP"] = "STOP";
|
||||
// The maximum number of tokens as specified in the request was reached.
|
||||
FinishReason["MAX_TOKENS"] = "MAX_TOKENS";
|
||||
// The candidate content was flagged for safety reasons.
|
||||
FinishReason["SAFETY"] = "SAFETY";
|
||||
// The candidate content was flagged for recitation reasons.
|
||||
FinishReason["RECITATION"] = "RECITATION";
|
||||
// The candidate content was flagged for using an unsupported language.
|
||||
FinishReason["LANGUAGE"] = "LANGUAGE";
|
||||
// Unknown reason.
|
||||
FinishReason["OTHER"] = "OTHER";
|
||||
})(FinishReason || (FinishReason = {}));
|
||||
/**
|
||||
* Task type for embedding content.
|
||||
* @public
|
||||
*/
|
||||
var TaskType;
|
||||
(function (TaskType) {
|
||||
TaskType["TASK_TYPE_UNSPECIFIED"] = "TASK_TYPE_UNSPECIFIED";
|
||||
TaskType["RETRIEVAL_QUERY"] = "RETRIEVAL_QUERY";
|
||||
TaskType["RETRIEVAL_DOCUMENT"] = "RETRIEVAL_DOCUMENT";
|
||||
TaskType["SEMANTIC_SIMILARITY"] = "SEMANTIC_SIMILARITY";
|
||||
TaskType["CLASSIFICATION"] = "CLASSIFICATION";
|
||||
TaskType["CLUSTERING"] = "CLUSTERING";
|
||||
})(TaskType || (TaskType = {}));
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
var FunctionCallingMode;
|
||||
(function (FunctionCallingMode) {
|
||||
// Unspecified function calling mode. This value should not be used.
|
||||
FunctionCallingMode["MODE_UNSPECIFIED"] = "MODE_UNSPECIFIED";
|
||||
// Default model behavior, model decides to predict either a function call
|
||||
// or a natural language repspose.
|
||||
FunctionCallingMode["AUTO"] = "AUTO";
|
||||
// Model is constrained to always predicting a function call only.
|
||||
// If "allowed_function_names" are set, the predicted function call will be
|
||||
// limited to any one of "allowed_function_names", else the predicted
|
||||
// function call will be any one of the provided "function_declarations".
|
||||
FunctionCallingMode["ANY"] = "ANY";
|
||||
// Model will not predict any function call. Model behavior is same as when
|
||||
// not passing any function declarations.
|
||||
FunctionCallingMode["NONE"] = "NONE";
|
||||
})(FunctionCallingMode || (FunctionCallingMode = {}));
|
||||
/**
|
||||
* The mode of the predictor to be used in dynamic retrieval.
|
||||
* @public
|
||||
*/
|
||||
var DynamicRetrievalMode;
|
||||
(function (DynamicRetrievalMode) {
|
||||
// Unspecified function calling mode. This value should not be used.
|
||||
DynamicRetrievalMode["MODE_UNSPECIFIED"] = "MODE_UNSPECIFIED";
|
||||
// Run retrieval only when system decides it is necessary.
|
||||
DynamicRetrievalMode["MODE_DYNAMIC"] = "MODE_DYNAMIC";
|
||||
})(DynamicRetrievalMode || (DynamicRetrievalMode = {}));
|
||||
|
||||
export { ExecutableCodeLanguage, FileState, FunctionCallingMode, GoogleAICacheManager, GoogleAIFileManager, Outcome, SchemaType };
|
||||
//# sourceMappingURL=index.mjs.map
|
||||
1
node_modules/@google/generative-ai/dist/server/index.mjs.map
generated
vendored
Normal file
1
node_modules/@google/generative-ai/dist/server/index.mjs.map
generated
vendored
Normal file
@ -0,0 +1 @@
|
||||
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
||||
17
node_modules/@google/generative-ai/dist/server/scripts/check-format.d.ts
generated
vendored
Normal file
17
node_modules/@google/generative-ai/dist/server/scripts/check-format.d.ts
generated
vendored
Normal file
@ -0,0 +1,17 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2023 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export {};
|
||||
18
node_modules/@google/generative-ai/dist/server/scripts/format-patterns.d.ts
generated
vendored
Normal file
18
node_modules/@google/generative-ai/dist/server/scripts/format-patterns.d.ts
generated
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export declare const formatPatterns: string[];
|
||||
export declare function getFormatPatternsString(): string;
|
||||
17
node_modules/@google/generative-ai/dist/server/scripts/license.d.ts
generated
vendored
Normal file
17
node_modules/@google/generative-ai/dist/server/scripts/license.d.ts
generated
vendored
Normal file
@ -0,0 +1,17 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2023 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export declare function doLicense(write: boolean): Promise<boolean>;
|
||||
17
node_modules/@google/generative-ai/dist/server/scripts/run-format.d.ts
generated
vendored
Normal file
17
node_modules/@google/generative-ai/dist/server/scripts/run-format.d.ts
generated
vendored
Normal file
@ -0,0 +1,17 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2023 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export {};
|
||||
793
node_modules/@google/generative-ai/dist/server/server.d.ts
generated
vendored
Normal file
793
node_modules/@google/generative-ai/dist/server/server.d.ts
generated
vendored
Normal file
@ -0,0 +1,793 @@
|
||||
/**
|
||||
* Describes `CachedContent` interface for sending to the server (if creating)
|
||||
* or received from the server (using getters or list methods).
|
||||
* @public
|
||||
*/
|
||||
export declare interface CachedContent extends CachedContentBase {
|
||||
name?: string;
|
||||
/**
|
||||
* protobuf.Duration format (ex. "3.0001s").
|
||||
*/
|
||||
ttl?: string;
|
||||
/**
|
||||
* `CachedContent` creation time in ISO string format.
|
||||
*/
|
||||
createTime?: string;
|
||||
/**
|
||||
* `CachedContent` update time in ISO string format.
|
||||
*/
|
||||
updateTime?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export declare interface CachedContentBase {
|
||||
model?: string;
|
||||
contents: Content[];
|
||||
tools?: Tool[];
|
||||
toolConfig?: ToolConfig;
|
||||
systemInstruction?: string | Part | Content;
|
||||
/**
|
||||
* Expiration time in ISO string format. Specify either this or `ttlSeconds`
|
||||
* when creating a `CachedContent`.
|
||||
*/
|
||||
expireTime?: string;
|
||||
displayName?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Params to pass to {@link GoogleAICacheManager.create}.
|
||||
* @public
|
||||
*/
|
||||
export declare interface CachedContentCreateParams extends CachedContentBase {
|
||||
/**
|
||||
* `CachedContent` ttl in seconds. Specify either this or `expireTime`
|
||||
* when creating a `CachedContent`.
|
||||
*/
|
||||
ttlSeconds?: number;
|
||||
}
|
||||
|
||||
/**
|
||||
* Fields that can be updated in an existing content cache.
|
||||
* @public
|
||||
*/
|
||||
export declare interface CachedContentUpdateInputFields {
|
||||
ttlSeconds?: number;
|
||||
expireTime?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Params to pass to {@link GoogleAICacheManager.update}.
|
||||
* @public
|
||||
*/
|
||||
export declare interface CachedContentUpdateParams {
|
||||
cachedContent: CachedContentUpdateInputFields;
|
||||
/**
|
||||
* protobuf FieldMask. If not specified, updates all provided fields.
|
||||
*/
|
||||
updateMask?: string[];
|
||||
}
|
||||
|
||||
/**
|
||||
* Params as sent to the backend (ttl instead of ttlSeconds).
|
||||
* @internal
|
||||
*/
|
||||
export declare interface _CachedContentUpdateRequest {
|
||||
cachedContent: _CachedContentUpdateRequestFields;
|
||||
/**
|
||||
* protobuf FieldMask
|
||||
*/
|
||||
updateMask?: string[];
|
||||
}
|
||||
|
||||
/**
|
||||
* Fields that can be updated in an existing content cache.
|
||||
* @internal
|
||||
*/
|
||||
export declare interface _CachedContentUpdateRequestFields {
|
||||
ttl?: string;
|
||||
expireTime?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Result of executing the `ExecutableCode`.
|
||||
* Only generated when using code execution, and always follows a `Part`
|
||||
* containing the `ExecutableCode`.
|
||||
* @public
|
||||
*/
|
||||
export declare interface CodeExecutionResult {
|
||||
/**
|
||||
* Outcome of the code execution.
|
||||
*/
|
||||
outcome: Outcome;
|
||||
/**
|
||||
* Contains stdout when code execution is successful, stderr or other
|
||||
* description otherwise.
|
||||
*/
|
||||
output: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Content part containing the result of executed code.
|
||||
* @public
|
||||
*/
|
||||
export declare interface CodeExecutionResultPart {
|
||||
text?: never;
|
||||
inlineData?: never;
|
||||
functionCall?: never;
|
||||
functionResponse?: never;
|
||||
fileData?: never;
|
||||
executableCode?: never;
|
||||
codeExecutionResult: CodeExecutionResult;
|
||||
}
|
||||
|
||||
/**
|
||||
* Enables the model to execute code as part of generation.
|
||||
* @public
|
||||
*/
|
||||
export declare interface CodeExecutionTool {
|
||||
/**
|
||||
* Provide an empty object to enable code execution. This field may have
|
||||
* subfields added in the future.
|
||||
*/
|
||||
codeExecution: {};
|
||||
}
|
||||
|
||||
/**
|
||||
* Content type for both prompts and response candidates.
|
||||
* @public
|
||||
*/
|
||||
export declare interface Content {
|
||||
role: string;
|
||||
parts: Part[];
|
||||
}
|
||||
|
||||
/**
|
||||
* Specifies the dynamic retrieval configuration for the given source.
|
||||
* @public
|
||||
*/
|
||||
declare interface DynamicRetrievalConfig {
|
||||
/**
|
||||
* The mode of the predictor to be used in dynamic retrieval.
|
||||
*/
|
||||
mode?: DynamicRetrievalMode;
|
||||
/**
|
||||
* The threshold to be used in dynamic retrieval. If not set, a system default
|
||||
* value is used.
|
||||
*/
|
||||
dynamicThreshold?: number;
|
||||
}
|
||||
|
||||
/**
|
||||
* The mode of the predictor to be used in dynamic retrieval.
|
||||
* @public
|
||||
*/
|
||||
declare enum DynamicRetrievalMode {
|
||||
MODE_UNSPECIFIED = "MODE_UNSPECIFIED",
|
||||
MODE_DYNAMIC = "MODE_DYNAMIC"
|
||||
}
|
||||
|
||||
/**
|
||||
* Details object that may be included in an error response.
|
||||
* @public
|
||||
*/
|
||||
export declare interface ErrorDetails {
|
||||
"@type"?: string;
|
||||
reason?: string;
|
||||
domain?: string;
|
||||
metadata?: Record<string, unknown>;
|
||||
[key: string]: unknown;
|
||||
}
|
||||
|
||||
/**
|
||||
* Code generated by the model that is meant to be executed, where the result
|
||||
* is returned to the model.
|
||||
* Only generated when using the code execution tool, in which the code will
|
||||
* be automatically executed, and a corresponding `CodeExecutionResult` will
|
||||
* also be generated.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare interface ExecutableCode {
|
||||
/**
|
||||
* Programming language of the `code`.
|
||||
*/
|
||||
language: ExecutableCodeLanguage;
|
||||
/**
|
||||
* The code to be executed.
|
||||
*/
|
||||
code: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export declare enum ExecutableCodeLanguage {
|
||||
LANGUAGE_UNSPECIFIED = "language_unspecified",
|
||||
PYTHON = "python"
|
||||
}
|
||||
|
||||
/**
|
||||
* Content part containing executable code generated by the model.
|
||||
* @public
|
||||
*/
|
||||
export declare interface ExecutableCodePart {
|
||||
text?: never;
|
||||
inlineData?: never;
|
||||
functionCall?: never;
|
||||
functionResponse?: never;
|
||||
fileData?: never;
|
||||
executableCode: ExecutableCode;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
|
||||
/**
|
||||
* Data pointing to a file uploaded with the Files API.
|
||||
* @public
|
||||
*/
|
||||
export declare interface FileData {
|
||||
mimeType: string;
|
||||
fileUri: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Content part interface if the part represents FileData.
|
||||
* @public
|
||||
*/
|
||||
export declare interface FileDataPart {
|
||||
text?: never;
|
||||
inlineData?: never;
|
||||
functionCall?: never;
|
||||
functionResponse?: never;
|
||||
fileData: FileData;
|
||||
executableCode?: never;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
|
||||
/**
|
||||
* Metadata to provide alongside a file upload
|
||||
* @public
|
||||
*/
|
||||
export declare interface FileMetadata {
|
||||
name?: string;
|
||||
displayName?: string;
|
||||
mimeType: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* File metadata response from server.
|
||||
* @public
|
||||
*/
|
||||
export declare interface FileMetadataResponse {
|
||||
name: string;
|
||||
displayName?: string;
|
||||
mimeType: string;
|
||||
sizeBytes: string;
|
||||
createTime: string;
|
||||
updateTime: string;
|
||||
expirationTime: string;
|
||||
sha256Hash: string;
|
||||
uri: string;
|
||||
state: FileState;
|
||||
/**
|
||||
* Error populated if file processing has failed.
|
||||
*/
|
||||
error?: RpcStatus;
|
||||
/**
|
||||
* Video metadata populated after processing is complete.
|
||||
*/
|
||||
videoMetadata?: VideoMetadata;
|
||||
}
|
||||
|
||||
/**
|
||||
* Processing state of the `File`.
|
||||
* @public
|
||||
*/
|
||||
export declare enum FileState {
|
||||
STATE_UNSPECIFIED = "STATE_UNSPECIFIED",
|
||||
PROCESSING = "PROCESSING",
|
||||
ACTIVE = "ACTIVE",
|
||||
FAILED = "FAILED"
|
||||
}
|
||||
|
||||
/**
|
||||
* A predicted [FunctionCall] returned from the model
|
||||
* that contains a string representing the [FunctionDeclaration.name]
|
||||
* and a structured JSON object containing the parameters and their values.
|
||||
* @public
|
||||
*/
|
||||
export declare interface FunctionCall {
|
||||
name: string;
|
||||
args: object;
|
||||
}
|
||||
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export declare interface FunctionCallingConfig {
|
||||
mode?: FunctionCallingMode;
|
||||
allowedFunctionNames?: string[];
|
||||
}
|
||||
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export declare enum FunctionCallingMode {
|
||||
MODE_UNSPECIFIED = "MODE_UNSPECIFIED",
|
||||
AUTO = "AUTO",
|
||||
ANY = "ANY",
|
||||
NONE = "NONE"
|
||||
}
|
||||
|
||||
/**
|
||||
* Content part interface if the part represents a FunctionCall.
|
||||
* @public
|
||||
*/
|
||||
export declare interface FunctionCallPart {
|
||||
text?: never;
|
||||
inlineData?: never;
|
||||
functionCall: FunctionCall;
|
||||
functionResponse?: never;
|
||||
fileData?: never;
|
||||
executableCode?: never;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
|
||||
/**
|
||||
* Structured representation of a function declaration as defined by the
|
||||
* [OpenAPI 3.0 specification](https://spec.openapis.org/oas/v3.0.3). Included
|
||||
* in this declaration are the function name and parameters. This
|
||||
* FunctionDeclaration is a representation of a block of code that can be used
|
||||
* as a Tool by the model and executed by the client.
|
||||
* @public
|
||||
*/
|
||||
export declare interface FunctionDeclaration {
|
||||
/**
|
||||
* The name of the function to call. Must start with a letter or an
|
||||
* underscore. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with
|
||||
* a max length of 64.
|
||||
*/
|
||||
name: string;
|
||||
/**
|
||||
* Optional. Description and purpose of the function. Model uses it to decide
|
||||
* how and whether to call the function.
|
||||
*/
|
||||
description?: string;
|
||||
/**
|
||||
* Optional. Describes the parameters to this function in JSON Schema Object
|
||||
* format. Reflects the Open API 3.03 Parameter Object. string Key: the name
|
||||
* of the parameter. Parameter names are case sensitive. Schema Value: the
|
||||
* Schema defining the type used for the parameter. For function with no
|
||||
* parameters, this can be left unset.
|
||||
*
|
||||
* @example with 1 required and 1 optional parameter: type: OBJECT properties:
|
||||
* ```
|
||||
* param1:
|
||||
*
|
||||
* type: STRING
|
||||
* param2:
|
||||
*
|
||||
* type: INTEGER
|
||||
* required:
|
||||
*
|
||||
* - param1
|
||||
* ```
|
||||
*/
|
||||
parameters?: FunctionDeclarationSchema;
|
||||
}
|
||||
|
||||
/**
|
||||
* Schema for parameters passed to {@link FunctionDeclaration.parameters}.
|
||||
* @public
|
||||
*/
|
||||
export declare interface FunctionDeclarationSchema {
|
||||
/** The type of the parameter. */
|
||||
type: SchemaType;
|
||||
/** The format of the parameter. */
|
||||
properties: {
|
||||
[k: string]: FunctionDeclarationSchemaProperty;
|
||||
};
|
||||
/** Optional. Description of the parameter. */
|
||||
description?: string;
|
||||
/** Optional. Array of required parameters. */
|
||||
required?: string[];
|
||||
}
|
||||
|
||||
/**
|
||||
* Schema for top-level function declaration
|
||||
* @public
|
||||
*/
|
||||
export declare interface FunctionDeclarationSchemaProperty extends Schema {
|
||||
}
|
||||
|
||||
/**
|
||||
* A FunctionDeclarationsTool is a piece of code that enables the system to
|
||||
* interact with external systems to perform an action, or set of actions,
|
||||
* outside of knowledge and scope of the model.
|
||||
* @public
|
||||
*/
|
||||
export declare interface FunctionDeclarationsTool {
|
||||
/**
|
||||
* Optional. One or more function declarations
|
||||
* to be passed to the model along with the current user query. Model may
|
||||
* decide to call a subset of these functions by populating
|
||||
* [FunctionCall][content.part.functionCall] in the response. User should
|
||||
* provide a [FunctionResponse][content.part.functionResponse] for each
|
||||
* function call in the next turn. Based on the function responses, Model will
|
||||
* generate the final response back to the user. Maximum 64 function
|
||||
* declarations can be provided.
|
||||
*/
|
||||
functionDeclarations?: FunctionDeclaration[];
|
||||
}
|
||||
|
||||
/**
|
||||
* The result output from a [FunctionCall] that contains a string
|
||||
* representing the [FunctionDeclaration.name]
|
||||
* and a structured JSON object containing any output
|
||||
* from the function is used as context to the model.
|
||||
* This should contain the result of a [FunctionCall]
|
||||
* made based on model prediction.
|
||||
* @public
|
||||
*/
|
||||
export declare interface FunctionResponse {
|
||||
name: string;
|
||||
response: object;
|
||||
}
|
||||
|
||||
/**
|
||||
* Content part interface if the part represents FunctionResponse.
|
||||
* @public
|
||||
*/
|
||||
export declare interface FunctionResponsePart {
|
||||
text?: never;
|
||||
inlineData?: never;
|
||||
functionCall?: never;
|
||||
functionResponse: FunctionResponse;
|
||||
fileData?: never;
|
||||
executableCode?: never;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
|
||||
/**
|
||||
* Interface for sending an image.
|
||||
* @public
|
||||
*/
|
||||
export declare interface GenerativeContentBlob {
|
||||
mimeType: string;
|
||||
/**
|
||||
* Image as a base64 string.
|
||||
*/
|
||||
data: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Class for managing GoogleAI content caches.
|
||||
* @public
|
||||
*/
|
||||
export declare class GoogleAICacheManager {
|
||||
apiKey: string;
|
||||
private _requestOptions?;
|
||||
constructor(apiKey: string, _requestOptions?: RequestOptions);
|
||||
/**
|
||||
* Upload a new content cache
|
||||
*/
|
||||
create(createOptions: CachedContentCreateParams): Promise<CachedContent>;
|
||||
/**
|
||||
* List all uploaded content caches
|
||||
*/
|
||||
list(listParams?: ListParams): Promise<ListCacheResponse>;
|
||||
/**
|
||||
* Get a content cache
|
||||
*/
|
||||
get(name: string): Promise<CachedContent>;
|
||||
/**
|
||||
* Update an existing content cache
|
||||
*/
|
||||
update(name: string, updateParams: CachedContentUpdateParams): Promise<CachedContent>;
|
||||
/**
|
||||
* Delete content cache with given name
|
||||
*/
|
||||
delete(name: string): Promise<void>;
|
||||
}
|
||||
|
||||
/**
|
||||
* Class for managing GoogleAI file uploads.
|
||||
* @public
|
||||
*/
|
||||
export declare class GoogleAIFileManager {
|
||||
apiKey: string;
|
||||
private _requestOptions;
|
||||
constructor(apiKey: string, _requestOptions?: RequestOptions);
|
||||
/**
|
||||
* Upload a file.
|
||||
*/
|
||||
uploadFile(filePath: string, fileMetadata: FileMetadata): Promise<UploadFileResponse>;
|
||||
/**
|
||||
* List all uploaded files.
|
||||
*
|
||||
* Any fields set in the optional {@link SingleRequestOptions} parameter will take
|
||||
* precedence over the {@link RequestOptions} values provided at the time of the
|
||||
* {@link GoogleAIFileManager} initialization.
|
||||
*/
|
||||
listFiles(listParams?: ListParams, requestOptions?: SingleRequestOptions): Promise<ListFilesResponse>;
|
||||
/**
|
||||
* Get metadata for file with given ID.
|
||||
*
|
||||
* Any fields set in the optional {@link SingleRequestOptions} parameter will take
|
||||
* precedence over the {@link RequestOptions} values provided at the time of the
|
||||
* {@link GoogleAIFileManager} initialization.
|
||||
*/
|
||||
getFile(fileId: string, requestOptions?: SingleRequestOptions): Promise<FileMetadataResponse>;
|
||||
/**
|
||||
* Delete file with given ID.
|
||||
*/
|
||||
deleteFile(fileId: string): Promise<void>;
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieval tool that is powered by Google search.
|
||||
* @public
|
||||
*/
|
||||
declare interface GoogleSearchRetrieval {
|
||||
/**
|
||||
* Specifies the dynamic retrieval configuration for the given source.
|
||||
*/
|
||||
dynamicRetrievalConfig?: DynamicRetrievalConfig;
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieval tool that is powered by Google search.
|
||||
* @public
|
||||
*/
|
||||
declare interface GoogleSearchRetrievalTool {
|
||||
/**
|
||||
* Google search retrieval tool config.
|
||||
*/
|
||||
googleSearchRetrieval?: GoogleSearchRetrieval;
|
||||
}
|
||||
|
||||
/**
|
||||
* Content part interface if the part represents an image.
|
||||
* @public
|
||||
*/
|
||||
export declare interface InlineDataPart {
|
||||
text?: never;
|
||||
inlineData: GenerativeContentBlob;
|
||||
functionCall?: never;
|
||||
functionResponse?: never;
|
||||
fileData?: never;
|
||||
executableCode?: never;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export declare interface ListCacheResponse {
|
||||
cachedContents: CachedContent[];
|
||||
nextPageToken?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Response from calling {@link GoogleAIFileManager.listFiles}
|
||||
* @public
|
||||
*/
|
||||
export declare interface ListFilesResponse {
|
||||
files: FileMetadataResponse[];
|
||||
nextPageToken?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Params to pass to {@link GoogleAIFileManager.listFiles} or
|
||||
* {@link GoogleAICacheManager.list}
|
||||
* @public
|
||||
*/
|
||||
export declare interface ListParams {
|
||||
pageSize?: number;
|
||||
pageToken?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Possible outcomes of code execution.
|
||||
* @public
|
||||
*/
|
||||
export declare enum Outcome {
|
||||
/**
|
||||
* Unspecified status. This value should not be used.
|
||||
*/
|
||||
OUTCOME_UNSPECIFIED = "outcome_unspecified",
|
||||
/**
|
||||
* Code execution completed successfully.
|
||||
*/
|
||||
OUTCOME_OK = "outcome_ok",
|
||||
/**
|
||||
* Code execution finished but with a failure. `stderr` should contain the
|
||||
* reason.
|
||||
*/
|
||||
OUTCOME_FAILED = "outcome_failed",
|
||||
/**
|
||||
* Code execution ran for too long, and was cancelled. There may or may not
|
||||
* be a partial output present.
|
||||
*/
|
||||
OUTCOME_DEADLINE_EXCEEDED = "outcome_deadline_exceeded"
|
||||
}
|
||||
|
||||
/**
|
||||
* Content part - includes text or image part types.
|
||||
* @public
|
||||
*/
|
||||
export declare type Part = TextPart | InlineDataPart | FunctionCallPart | FunctionResponsePart | FileDataPart | ExecutableCodePart | CodeExecutionResultPart;
|
||||
|
||||
/**
|
||||
* Params passed to getGenerativeModel() or GoogleAIFileManager().
|
||||
* @public
|
||||
*/
|
||||
export declare interface RequestOptions {
|
||||
/**
|
||||
* Request timeout in milliseconds.
|
||||
*/
|
||||
timeout?: number;
|
||||
/**
|
||||
* Version of API endpoint to call (e.g. "v1" or "v1beta"). If not specified,
|
||||
* defaults to latest stable version.
|
||||
*/
|
||||
apiVersion?: string;
|
||||
/**
|
||||
* Additional attribution information to include in the x-goog-api-client header.
|
||||
* Used by wrapper SDKs.
|
||||
*/
|
||||
apiClient?: string;
|
||||
/**
|
||||
* Base endpoint url. Defaults to "https://generativelanguage.googleapis.com"
|
||||
*/
|
||||
baseUrl?: string;
|
||||
/**
|
||||
* Custom HTTP request headers.
|
||||
*/
|
||||
customHeaders?: Headers | Record<string, string>;
|
||||
}
|
||||
|
||||
/**
|
||||
* Schema passed to `GenerationConfig.responseSchema`
|
||||
* @public
|
||||
*/
|
||||
export declare interface ResponseSchema extends Schema {
|
||||
}
|
||||
|
||||
/**
|
||||
* Standard RPC error status object.
|
||||
* @public
|
||||
*/
|
||||
export declare interface RpcStatus {
|
||||
/**
|
||||
* Error status code
|
||||
*/
|
||||
code: number;
|
||||
/**
|
||||
* A developer-facing error message.
|
||||
*/
|
||||
message: string;
|
||||
/**
|
||||
* A list of messages that carry the error details.
|
||||
*/
|
||||
details?: ErrorDetails[];
|
||||
}
|
||||
|
||||
/**
|
||||
* Schema is used to define the format of input/output data.
|
||||
* Represents a select subset of an OpenAPI 3.0 schema object.
|
||||
* More fields may be added in the future as needed.
|
||||
* @public
|
||||
*/
|
||||
export declare interface Schema {
|
||||
/**
|
||||
* Optional. The type of the property. {@link
|
||||
* SchemaType}.
|
||||
*/
|
||||
type?: SchemaType;
|
||||
/** Optional. The format of the property. */
|
||||
format?: string;
|
||||
/** Optional. The description of the property. */
|
||||
description?: string;
|
||||
/** Optional. Whether the property is nullable. */
|
||||
nullable?: boolean;
|
||||
/** Optional. The items of the property. */
|
||||
items?: Schema;
|
||||
/** Optional. The enum of the property. */
|
||||
enum?: string[];
|
||||
/** Optional. Map of {@link Schema}. */
|
||||
properties?: {
|
||||
[k: string]: Schema;
|
||||
};
|
||||
/** Optional. Array of required property. */
|
||||
required?: string[];
|
||||
/** Optional. The example of the property. */
|
||||
example?: unknown;
|
||||
}
|
||||
|
||||
/**
|
||||
* Contains the list of OpenAPI data types
|
||||
* as defined by https://swagger.io/docs/specification/data-models/data-types/
|
||||
* @public
|
||||
*/
|
||||
export declare enum SchemaType {
|
||||
/** String type. */
|
||||
STRING = "string",
|
||||
/** Number type. */
|
||||
NUMBER = "number",
|
||||
/** Integer type. */
|
||||
INTEGER = "integer",
|
||||
/** Boolean type. */
|
||||
BOOLEAN = "boolean",
|
||||
/** Array type. */
|
||||
ARRAY = "array",
|
||||
/** Object type. */
|
||||
OBJECT = "object"
|
||||
}
|
||||
|
||||
/**
|
||||
* Params passed to atomic asynchronous operations.
|
||||
* @public
|
||||
*/
|
||||
export declare interface SingleRequestOptions extends RequestOptions {
|
||||
/**
|
||||
* An object that may be used to abort asynchronous requests. The request may
|
||||
* also be aborted due to the expiration of the timeout value, if provided.
|
||||
*
|
||||
* NOTE: AbortSignal is a client-only operation. Using it to cancel an
|
||||
* operation will not cancel the request in the service. You will still
|
||||
* be charged usage for any applicable operations.
|
||||
*/
|
||||
signal?: AbortSignal;
|
||||
}
|
||||
|
||||
/**
|
||||
* Content part interface if the part represents a text string.
|
||||
* @public
|
||||
*/
|
||||
export declare interface TextPart {
|
||||
text: string;
|
||||
inlineData?: never;
|
||||
functionCall?: never;
|
||||
functionResponse?: never;
|
||||
fileData?: never;
|
||||
executableCode?: never;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
|
||||
/**
|
||||
* Defines a tool that model can call to access external knowledge.
|
||||
* @public
|
||||
*/
|
||||
export declare type Tool = FunctionDeclarationsTool | CodeExecutionTool | GoogleSearchRetrievalTool;
|
||||
|
||||
/**
|
||||
* Tool config. This config is shared for all tools provided in the request.
|
||||
* @public
|
||||
*/
|
||||
export declare interface ToolConfig {
|
||||
functionCallingConfig: FunctionCallingConfig;
|
||||
}
|
||||
|
||||
/**
|
||||
* Response from calling {@link GoogleAIFileManager.uploadFile}
|
||||
* @public
|
||||
*/
|
||||
export declare interface UploadFileResponse {
|
||||
file: FileMetadataResponse;
|
||||
}
|
||||
|
||||
/**
|
||||
* Metadata populated when video has been processed.
|
||||
* @public
|
||||
*/
|
||||
export declare interface VideoMetadata {
|
||||
/**
|
||||
* The video duration in
|
||||
* protobuf {@link https://cloud.google.com/ruby/docs/reference/google-cloud-workflows-v1/latest/Google-Protobuf-Duration#json-mapping | Duration} format.
|
||||
*/
|
||||
videoDuration: string;
|
||||
}
|
||||
|
||||
export { }
|
||||
50
node_modules/@google/generative-ai/dist/server/src/errors.d.ts
generated
vendored
Normal file
50
node_modules/@google/generative-ai/dist/server/src/errors.d.ts
generated
vendored
Normal file
@ -0,0 +1,50 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { ErrorDetails } from "../types";
|
||||
/**
|
||||
* Basic error type for this SDK.
|
||||
* @public
|
||||
*/
|
||||
export declare class GoogleGenerativeAIError extends Error {
|
||||
constructor(message: string);
|
||||
}
|
||||
/**
|
||||
* Errors in the contents of a response from the model. This includes parsing
|
||||
* errors, or responses including a safety block reason.
|
||||
* @public
|
||||
*/
|
||||
export declare class GoogleGenerativeAIResponseError<T> extends GoogleGenerativeAIError {
|
||||
response?: T;
|
||||
constructor(message: string, response?: T);
|
||||
}
|
||||
/**
|
||||
* Error class covering HTTP errors when calling the server. Includes HTTP
|
||||
* status, statusText, and optional details, if provided in the server response.
|
||||
* @public
|
||||
*/
|
||||
export declare class GoogleGenerativeAIFetchError extends GoogleGenerativeAIError {
|
||||
status?: number;
|
||||
statusText?: string;
|
||||
errorDetails?: ErrorDetails[];
|
||||
constructor(message: string, status?: number, statusText?: string, errorDetails?: ErrorDetails[]);
|
||||
}
|
||||
/**
|
||||
* Errors in the contents of a request originating from user input.
|
||||
* @public
|
||||
*/
|
||||
export declare class GoogleGenerativeAIRequestInputError extends GoogleGenerativeAIError {
|
||||
}
|
||||
36
node_modules/@google/generative-ai/dist/server/src/gen-ai.d.ts
generated
vendored
Normal file
36
node_modules/@google/generative-ai/dist/server/src/gen-ai.d.ts
generated
vendored
Normal file
@ -0,0 +1,36 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { CachedContent, ModelParams, RequestOptions } from "../types";
|
||||
import { GenerativeModel } from "./models/generative-model";
|
||||
export { ChatSession } from "./methods/chat-session";
|
||||
export { GenerativeModel };
|
||||
/**
|
||||
* Top-level class for this SDK
|
||||
* @public
|
||||
*/
|
||||
export declare class GoogleGenerativeAI {
|
||||
apiKey: string;
|
||||
constructor(apiKey: string);
|
||||
/**
|
||||
* Gets a {@link GenerativeModel} instance for the provided model name.
|
||||
*/
|
||||
getGenerativeModel(modelParams: ModelParams, requestOptions?: RequestOptions): GenerativeModel;
|
||||
/**
|
||||
* Creates a {@link GenerativeModel} instance from provided content cache.
|
||||
*/
|
||||
getGenerativeModelFromCachedContent(cachedContent: CachedContent, modelParams?: Partial<ModelParams>, requestOptions?: RequestOptions): GenerativeModel;
|
||||
}
|
||||
19
node_modules/@google/generative-ai/dist/server/src/index.d.ts
generated
vendored
Normal file
19
node_modules/@google/generative-ai/dist/server/src/index.d.ts
generated
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export * from "../types";
|
||||
export * from "./gen-ai";
|
||||
export * from "./errors";
|
||||
18
node_modules/@google/generative-ai/dist/server/src/methods/chat-session-helpers.d.ts
generated
vendored
Normal file
18
node_modules/@google/generative-ai/dist/server/src/methods/chat-session-helpers.d.ts
generated
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { Content } from "../../types";
|
||||
export declare function validateChatHistory(history: Content[]): void;
|
||||
57
node_modules/@google/generative-ai/dist/server/src/methods/chat-session.d.ts
generated
vendored
Normal file
57
node_modules/@google/generative-ai/dist/server/src/methods/chat-session.d.ts
generated
vendored
Normal file
@ -0,0 +1,57 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { Content, GenerateContentResult, GenerateContentStreamResult, Part, RequestOptions, SingleRequestOptions, StartChatParams } from "../../types";
|
||||
/**
|
||||
* ChatSession class that enables sending chat messages and stores
|
||||
* history of sent and received messages so far.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class ChatSession {
|
||||
model: string;
|
||||
params?: StartChatParams;
|
||||
private _requestOptions;
|
||||
private _apiKey;
|
||||
private _history;
|
||||
private _sendPromise;
|
||||
constructor(apiKey: string, model: string, params?: StartChatParams, _requestOptions?: RequestOptions);
|
||||
/**
|
||||
* Gets the chat history so far. Blocked prompts are not added to history.
|
||||
* Blocked candidates are not added to history, nor are the prompts that
|
||||
* generated them.
|
||||
*/
|
||||
getHistory(): Promise<Content[]>;
|
||||
/**
|
||||
* Sends a chat message and receives a non-streaming
|
||||
* {@link GenerateContentResult}.
|
||||
*
|
||||
* Fields set in the optional {@link SingleRequestOptions} parameter will
|
||||
* take precedence over the {@link RequestOptions} values provided to
|
||||
* {@link GoogleGenerativeAI.getGenerativeModel }.
|
||||
*/
|
||||
sendMessage(request: string | Array<string | Part>, requestOptions?: SingleRequestOptions): Promise<GenerateContentResult>;
|
||||
/**
|
||||
* Sends a chat message and receives the response as a
|
||||
* {@link GenerateContentStreamResult} containing an iterable stream
|
||||
* and a response promise.
|
||||
*
|
||||
* Fields set in the optional {@link SingleRequestOptions} parameter will
|
||||
* take precedence over the {@link RequestOptions} values provided to
|
||||
* {@link GoogleGenerativeAI.getGenerativeModel }.
|
||||
*/
|
||||
sendMessageStream(request: string | Array<string | Part>, requestOptions?: SingleRequestOptions): Promise<GenerateContentStreamResult>;
|
||||
}
|
||||
18
node_modules/@google/generative-ai/dist/server/src/methods/count-tokens.d.ts
generated
vendored
Normal file
18
node_modules/@google/generative-ai/dist/server/src/methods/count-tokens.d.ts
generated
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { CountTokensRequest, CountTokensResponse, SingleRequestOptions } from "../../types";
|
||||
export declare function countTokens(apiKey: string, model: string, params: CountTokensRequest, singleRequestOptions: SingleRequestOptions): Promise<CountTokensResponse>;
|
||||
19
node_modules/@google/generative-ai/dist/server/src/methods/embed-content.d.ts
generated
vendored
Normal file
19
node_modules/@google/generative-ai/dist/server/src/methods/embed-content.d.ts
generated
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { BatchEmbedContentsRequest, BatchEmbedContentsResponse, EmbedContentRequest, EmbedContentResponse, RequestOptions } from "../../types";
|
||||
export declare function embedContent(apiKey: string, model: string, params: EmbedContentRequest, requestOptions?: RequestOptions): Promise<EmbedContentResponse>;
|
||||
export declare function batchEmbedContents(apiKey: string, model: string, params: BatchEmbedContentsRequest, requestOptions?: RequestOptions): Promise<BatchEmbedContentsResponse>;
|
||||
19
node_modules/@google/generative-ai/dist/server/src/methods/generate-content.d.ts
generated
vendored
Normal file
19
node_modules/@google/generative-ai/dist/server/src/methods/generate-content.d.ts
generated
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { GenerateContentRequest, GenerateContentResult, GenerateContentStreamResult, SingleRequestOptions } from "../../types";
|
||||
export declare function generateContentStream(apiKey: string, model: string, params: GenerateContentRequest, requestOptions: SingleRequestOptions): Promise<GenerateContentStreamResult>;
|
||||
export declare function generateContent(apiKey: string, model: string, params: GenerateContentRequest, requestOptions?: SingleRequestOptions): Promise<GenerateContentResult>;
|
||||
83
node_modules/@google/generative-ai/dist/server/src/models/generative-model.d.ts
generated
vendored
Normal file
83
node_modules/@google/generative-ai/dist/server/src/models/generative-model.d.ts
generated
vendored
Normal file
@ -0,0 +1,83 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { BatchEmbedContentsRequest, BatchEmbedContentsResponse, CachedContent, Content, CountTokensRequest, CountTokensResponse, EmbedContentRequest, EmbedContentResponse, GenerateContentRequest, GenerateContentResult, GenerateContentStreamResult, GenerationConfig, ModelParams, Part, RequestOptions, SafetySetting, SingleRequestOptions, StartChatParams, Tool, ToolConfig } from "../../types";
|
||||
import { ChatSession } from "../methods/chat-session";
|
||||
/**
|
||||
* Class for generative model APIs.
|
||||
* @public
|
||||
*/
|
||||
export declare class GenerativeModel {
|
||||
apiKey: string;
|
||||
private _requestOptions;
|
||||
model: string;
|
||||
generationConfig: GenerationConfig;
|
||||
safetySettings: SafetySetting[];
|
||||
tools?: Tool[];
|
||||
toolConfig?: ToolConfig;
|
||||
systemInstruction?: Content;
|
||||
cachedContent: CachedContent;
|
||||
constructor(apiKey: string, modelParams: ModelParams, _requestOptions?: RequestOptions);
|
||||
/**
|
||||
* Makes a single non-streaming call to the model
|
||||
* and returns an object containing a single {@link GenerateContentResponse}.
|
||||
*
|
||||
* Fields set in the optional {@link SingleRequestOptions} parameter will
|
||||
* take precedence over the {@link RequestOptions} values provided to
|
||||
* {@link GoogleGenerativeAI.getGenerativeModel }.
|
||||
*/
|
||||
generateContent(request: GenerateContentRequest | string | Array<string | Part>, requestOptions?: SingleRequestOptions): Promise<GenerateContentResult>;
|
||||
/**
|
||||
* Makes a single streaming call to the model and returns an object
|
||||
* containing an iterable stream that iterates over all chunks in the
|
||||
* streaming response as well as a promise that returns the final
|
||||
* aggregated response.
|
||||
*
|
||||
* Fields set in the optional {@link SingleRequestOptions} parameter will
|
||||
* take precedence over the {@link RequestOptions} values provided to
|
||||
* {@link GoogleGenerativeAI.getGenerativeModel }.
|
||||
*/
|
||||
generateContentStream(request: GenerateContentRequest | string | Array<string | Part>, requestOptions?: SingleRequestOptions): Promise<GenerateContentStreamResult>;
|
||||
/**
|
||||
* Gets a new {@link ChatSession} instance which can be used for
|
||||
* multi-turn chats.
|
||||
*/
|
||||
startChat(startChatParams?: StartChatParams): ChatSession;
|
||||
/**
|
||||
* Counts the tokens in the provided request.
|
||||
*
|
||||
* Fields set in the optional {@link SingleRequestOptions} parameter will
|
||||
* take precedence over the {@link RequestOptions} values provided to
|
||||
* {@link GoogleGenerativeAI.getGenerativeModel }.
|
||||
*/
|
||||
countTokens(request: CountTokensRequest | string | Array<string | Part>, requestOptions?: SingleRequestOptions): Promise<CountTokensResponse>;
|
||||
/**
|
||||
* Embeds the provided content.
|
||||
*
|
||||
* Fields set in the optional {@link SingleRequestOptions} parameter will
|
||||
* take precedence over the {@link RequestOptions} values provided to
|
||||
* {@link GoogleGenerativeAI.getGenerativeModel }.
|
||||
*/
|
||||
embedContent(request: EmbedContentRequest | string | Array<string | Part>, requestOptions?: SingleRequestOptions): Promise<EmbedContentResponse>;
|
||||
/**
|
||||
* Embeds an array of {@link EmbedContentRequest}s.
|
||||
*
|
||||
* Fields set in the optional {@link SingleRequestOptions} parameter will
|
||||
* take precedence over the {@link RequestOptions} values provided to
|
||||
* {@link GoogleGenerativeAI.getGenerativeModel }.
|
||||
*/
|
||||
batchEmbedContents(batchEmbedContentRequest: BatchEmbedContentsRequest, requestOptions?: SingleRequestOptions): Promise<BatchEmbedContentsResponse>;
|
||||
}
|
||||
22
node_modules/@google/generative-ai/dist/server/src/requests/request-helpers.d.ts
generated
vendored
Normal file
22
node_modules/@google/generative-ai/dist/server/src/requests/request-helpers.d.ts
generated
vendored
Normal file
@ -0,0 +1,22 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { Content, CountTokensRequest, EmbedContentRequest, GenerateContentRequest, ModelParams, Part, _CountTokensRequestInternal } from "../../types";
|
||||
export declare function formatSystemInstruction(input?: string | Part | Content): Content | undefined;
|
||||
export declare function formatNewContent(request: string | Array<string | Part>): Content;
|
||||
export declare function formatCountTokensInput(params: CountTokensRequest | string | Array<string | Part>, modelParams?: ModelParams): _CountTokensRequestInternal;
|
||||
export declare function formatGenerateContentInput(params: GenerateContentRequest | string | Array<string | Part>): GenerateContentRequest;
|
||||
export declare function formatEmbedContentInput(params: EmbedContentRequest | string | Array<string | Part>): EmbedContentRequest;
|
||||
46
node_modules/@google/generative-ai/dist/server/src/requests/request.d.ts
generated
vendored
Normal file
46
node_modules/@google/generative-ai/dist/server/src/requests/request.d.ts
generated
vendored
Normal file
@ -0,0 +1,46 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { RequestOptions, SingleRequestOptions } from "../../types";
|
||||
export declare const DEFAULT_BASE_URL = "https://generativelanguage.googleapis.com";
|
||||
export declare const DEFAULT_API_VERSION = "v1beta";
|
||||
export declare enum Task {
|
||||
GENERATE_CONTENT = "generateContent",
|
||||
STREAM_GENERATE_CONTENT = "streamGenerateContent",
|
||||
COUNT_TOKENS = "countTokens",
|
||||
EMBED_CONTENT = "embedContent",
|
||||
BATCH_EMBED_CONTENTS = "batchEmbedContents"
|
||||
}
|
||||
export declare class RequestUrl {
|
||||
model: string;
|
||||
task: Task;
|
||||
apiKey: string;
|
||||
stream: boolean;
|
||||
requestOptions: RequestOptions;
|
||||
constructor(model: string, task: Task, apiKey: string, stream: boolean, requestOptions: RequestOptions);
|
||||
toString(): string;
|
||||
}
|
||||
/**
|
||||
* Simple, but may become more complex if we add more versions to log.
|
||||
*/
|
||||
export declare function getClientHeaders(requestOptions: RequestOptions): string;
|
||||
export declare function getHeaders(url: RequestUrl): Promise<Headers>;
|
||||
export declare function constructModelRequest(model: string, task: Task, apiKey: string, stream: boolean, body: string, requestOptions: SingleRequestOptions): Promise<{
|
||||
url: string;
|
||||
fetchOptions: RequestInit;
|
||||
}>;
|
||||
export declare function makeModelRequest(model: string, task: Task, apiKey: string, stream: boolean, body: string, requestOptions?: SingleRequestOptions, fetchFn?: typeof fetch): Promise<Response>;
|
||||
export declare function makeRequest(url: string, fetchOptions: RequestInit, fetchFn?: typeof fetch): Promise<Response>;
|
||||
31
node_modules/@google/generative-ai/dist/server/src/requests/response-helpers.d.ts
generated
vendored
Normal file
31
node_modules/@google/generative-ai/dist/server/src/requests/response-helpers.d.ts
generated
vendored
Normal file
@ -0,0 +1,31 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { EnhancedGenerateContentResponse, FunctionCall, GenerateContentResponse } from "../../types";
|
||||
/**
|
||||
* Adds convenience helper methods to a response object, including stream
|
||||
* chunks (as long as each chunk is a complete GenerateContentResponse JSON).
|
||||
*/
|
||||
export declare function addHelpers(response: GenerateContentResponse): EnhancedGenerateContentResponse;
|
||||
/**
|
||||
* Returns all text found in all parts of first candidate.
|
||||
*/
|
||||
export declare function getText(response: GenerateContentResponse): string;
|
||||
/**
|
||||
* Returns functionCall of first candidate.
|
||||
*/
|
||||
export declare function getFunctionCalls(response: GenerateContentResponse): FunctionCall[];
|
||||
export declare function formatBlockErrorMessage(response: GenerateContentResponse): string;
|
||||
37
node_modules/@google/generative-ai/dist/server/src/requests/stream-reader.d.ts
generated
vendored
Normal file
37
node_modules/@google/generative-ai/dist/server/src/requests/stream-reader.d.ts
generated
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { GenerateContentResponse, GenerateContentStreamResult } from "../../types";
|
||||
/**
|
||||
* Process a response.body stream from the backend and return an
|
||||
* iterator that provides one complete GenerateContentResponse at a time
|
||||
* and a promise that resolves with a single aggregated
|
||||
* GenerateContentResponse.
|
||||
*
|
||||
* @param response - Response from a fetch call
|
||||
*/
|
||||
export declare function processStream(response: Response): GenerateContentStreamResult;
|
||||
/**
|
||||
* Reads a raw stream from the fetch response and join incomplete
|
||||
* chunks, returning a new stream that provides a single complete
|
||||
* GenerateContentResponse in each iteration.
|
||||
*/
|
||||
export declare function getResponseStream<T>(inputStream: ReadableStream<string>): ReadableStream<T>;
|
||||
/**
|
||||
* Aggregates an array of `GenerateContentResponse`s into a single
|
||||
* GenerateContentResponse.
|
||||
*/
|
||||
export declare function aggregateResponses(responses: GenerateContentResponse[]): GenerateContentResponse;
|
||||
47
node_modules/@google/generative-ai/dist/server/src/server/cache-manager.d.ts
generated
vendored
Normal file
47
node_modules/@google/generative-ai/dist/server/src/server/cache-manager.d.ts
generated
vendored
Normal file
@ -0,0 +1,47 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { CachedContent, RequestOptions } from "../../types";
|
||||
import { CachedContentCreateParams, CachedContentUpdateParams, ListCacheResponse, ListParams } from "../../types/server";
|
||||
/**
|
||||
* Class for managing GoogleAI content caches.
|
||||
* @public
|
||||
*/
|
||||
export declare class GoogleAICacheManager {
|
||||
apiKey: string;
|
||||
private _requestOptions?;
|
||||
constructor(apiKey: string, _requestOptions?: RequestOptions);
|
||||
/**
|
||||
* Upload a new content cache
|
||||
*/
|
||||
create(createOptions: CachedContentCreateParams): Promise<CachedContent>;
|
||||
/**
|
||||
* List all uploaded content caches
|
||||
*/
|
||||
list(listParams?: ListParams): Promise<ListCacheResponse>;
|
||||
/**
|
||||
* Get a content cache
|
||||
*/
|
||||
get(name: string): Promise<CachedContent>;
|
||||
/**
|
||||
* Update an existing content cache
|
||||
*/
|
||||
update(name: string, updateParams: CachedContentUpdateParams): Promise<CachedContent>;
|
||||
/**
|
||||
* Delete content cache with given name
|
||||
*/
|
||||
delete(name: string): Promise<void>;
|
||||
}
|
||||
24
node_modules/@google/generative-ai/dist/server/src/server/constants.d.ts
generated
vendored
Normal file
24
node_modules/@google/generative-ai/dist/server/src/server/constants.d.ts
generated
vendored
Normal file
@ -0,0 +1,24 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export declare enum RpcTask {
|
||||
UPLOAD = "upload",
|
||||
LIST = "list",
|
||||
GET = "get",
|
||||
DELETE = "delete",
|
||||
UPDATE = "update",
|
||||
CREATE = "create"
|
||||
}
|
||||
56
node_modules/@google/generative-ai/dist/server/src/server/file-manager.d.ts
generated
vendored
Normal file
56
node_modules/@google/generative-ai/dist/server/src/server/file-manager.d.ts
generated
vendored
Normal file
@ -0,0 +1,56 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { RequestOptions, SingleRequestOptions } from "../../types";
|
||||
import { FileMetadata, FileMetadataResponse, ListFilesResponse, ListParams, UploadFileResponse } from "../../types/server";
|
||||
export interface UploadMetadata {
|
||||
name?: string;
|
||||
["display_name"]?: string;
|
||||
}
|
||||
/**
|
||||
* Class for managing GoogleAI file uploads.
|
||||
* @public
|
||||
*/
|
||||
export declare class GoogleAIFileManager {
|
||||
apiKey: string;
|
||||
private _requestOptions;
|
||||
constructor(apiKey: string, _requestOptions?: RequestOptions);
|
||||
/**
|
||||
* Upload a file.
|
||||
*/
|
||||
uploadFile(filePath: string, fileMetadata: FileMetadata): Promise<UploadFileResponse>;
|
||||
/**
|
||||
* List all uploaded files.
|
||||
*
|
||||
* Any fields set in the optional {@link SingleRequestOptions} parameter will take
|
||||
* precedence over the {@link RequestOptions} values provided at the time of the
|
||||
* {@link GoogleAIFileManager} initialization.
|
||||
*/
|
||||
listFiles(listParams?: ListParams, requestOptions?: SingleRequestOptions): Promise<ListFilesResponse>;
|
||||
/**
|
||||
* Get metadata for file with given ID.
|
||||
*
|
||||
* Any fields set in the optional {@link SingleRequestOptions} parameter will take
|
||||
* precedence over the {@link RequestOptions} values provided at the time of the
|
||||
* {@link GoogleAIFileManager} initialization.
|
||||
*/
|
||||
getFile(fileId: string, requestOptions?: SingleRequestOptions): Promise<FileMetadataResponse>;
|
||||
/**
|
||||
* Delete file with given ID.
|
||||
*/
|
||||
deleteFile(fileId: string): Promise<void>;
|
||||
}
|
||||
export declare function getUploadMetadata(inputMetadata: FileMetadata): FileMetadata;
|
||||
19
node_modules/@google/generative-ai/dist/server/src/server/index.d.ts
generated
vendored
Normal file
19
node_modules/@google/generative-ai/dist/server/src/server/index.d.ts
generated
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export { GoogleAIFileManager } from "./file-manager";
|
||||
export { GoogleAICacheManager } from "./cache-manager";
|
||||
export * from "../../types/server";
|
||||
42
node_modules/@google/generative-ai/dist/server/src/server/request.d.ts
generated
vendored
Normal file
42
node_modules/@google/generative-ai/dist/server/src/server/request.d.ts
generated
vendored
Normal file
@ -0,0 +1,42 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { RequestOptions, SingleRequestOptions } from "../../types";
|
||||
import { RpcTask } from "./constants";
|
||||
export declare class ServerRequestUrl {
|
||||
task: RpcTask;
|
||||
apiKey: string;
|
||||
requestOptions?: SingleRequestOptions;
|
||||
protected _url: URL;
|
||||
constructor(task: RpcTask, apiKey: string, requestOptions?: SingleRequestOptions);
|
||||
appendPath(path: string): void;
|
||||
appendParam(key: string, value: string): void;
|
||||
toString(): string;
|
||||
}
|
||||
export declare class CachedContentUrl extends ServerRequestUrl {
|
||||
task: RpcTask;
|
||||
apiKey: string;
|
||||
requestOptions?: RequestOptions;
|
||||
constructor(task: RpcTask, apiKey: string, requestOptions?: RequestOptions);
|
||||
}
|
||||
export declare class FilesRequestUrl extends ServerRequestUrl {
|
||||
task: RpcTask;
|
||||
apiKey: string;
|
||||
requestOptions?: RequestOptions;
|
||||
constructor(task: RpcTask, apiKey: string, requestOptions?: RequestOptions);
|
||||
}
|
||||
export declare function getHeaders(url: ServerRequestUrl): Headers;
|
||||
export declare function makeServerRequest(url: FilesRequestUrl, headers: Headers, body?: Blob | string, fetchFn?: typeof fetch): Promise<Response>;
|
||||
230
node_modules/@google/generative-ai/dist/server/types/content.d.ts
generated
vendored
Normal file
230
node_modules/@google/generative-ai/dist/server/types/content.d.ts
generated
vendored
Normal file
@ -0,0 +1,230 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export * from "./function-calling";
|
||||
/**
|
||||
* Content type for both prompts and response candidates.
|
||||
* @public
|
||||
*/
|
||||
export interface Content {
|
||||
role: string;
|
||||
parts: Part[];
|
||||
}
|
||||
/**
|
||||
* Content part - includes text or image part types.
|
||||
* @public
|
||||
*/
|
||||
export type Part = TextPart | InlineDataPart | FunctionCallPart | FunctionResponsePart | FileDataPart | ExecutableCodePart | CodeExecutionResultPart;
|
||||
/**
|
||||
* Content part interface if the part represents a text string.
|
||||
* @public
|
||||
*/
|
||||
export interface TextPart {
|
||||
text: string;
|
||||
inlineData?: never;
|
||||
functionCall?: never;
|
||||
functionResponse?: never;
|
||||
fileData?: never;
|
||||
executableCode?: never;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
/**
|
||||
* Content part interface if the part represents an image.
|
||||
* @public
|
||||
*/
|
||||
export interface InlineDataPart {
|
||||
text?: never;
|
||||
inlineData: GenerativeContentBlob;
|
||||
functionCall?: never;
|
||||
functionResponse?: never;
|
||||
fileData?: never;
|
||||
executableCode?: never;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
/**
|
||||
* Content part interface if the part represents a FunctionCall.
|
||||
* @public
|
||||
*/
|
||||
export interface FunctionCallPart {
|
||||
text?: never;
|
||||
inlineData?: never;
|
||||
functionCall: FunctionCall;
|
||||
functionResponse?: never;
|
||||
fileData?: never;
|
||||
executableCode?: never;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
/**
|
||||
* Content part interface if the part represents FunctionResponse.
|
||||
* @public
|
||||
*/
|
||||
export interface FunctionResponsePart {
|
||||
text?: never;
|
||||
inlineData?: never;
|
||||
functionCall?: never;
|
||||
functionResponse: FunctionResponse;
|
||||
fileData?: never;
|
||||
executableCode?: never;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
/**
|
||||
* Content part interface if the part represents FileData.
|
||||
* @public
|
||||
*/
|
||||
export interface FileDataPart {
|
||||
text?: never;
|
||||
inlineData?: never;
|
||||
functionCall?: never;
|
||||
functionResponse?: never;
|
||||
fileData: FileData;
|
||||
executableCode?: never;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
/**
|
||||
* Content part containing executable code generated by the model.
|
||||
* @public
|
||||
*/
|
||||
export interface ExecutableCodePart {
|
||||
text?: never;
|
||||
inlineData?: never;
|
||||
functionCall?: never;
|
||||
functionResponse?: never;
|
||||
fileData?: never;
|
||||
executableCode: ExecutableCode;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
/**
|
||||
* Content part containing the result of executed code.
|
||||
* @public
|
||||
*/
|
||||
export interface CodeExecutionResultPart {
|
||||
text?: never;
|
||||
inlineData?: never;
|
||||
functionCall?: never;
|
||||
functionResponse?: never;
|
||||
fileData?: never;
|
||||
executableCode?: never;
|
||||
codeExecutionResult: CodeExecutionResult;
|
||||
}
|
||||
/**
|
||||
* A predicted [FunctionCall] returned from the model
|
||||
* that contains a string representing the [FunctionDeclaration.name]
|
||||
* and a structured JSON object containing the parameters and their values.
|
||||
* @public
|
||||
*/
|
||||
export interface FunctionCall {
|
||||
name: string;
|
||||
args: object;
|
||||
}
|
||||
/**
|
||||
* The result output from a [FunctionCall] that contains a string
|
||||
* representing the [FunctionDeclaration.name]
|
||||
* and a structured JSON object containing any output
|
||||
* from the function is used as context to the model.
|
||||
* This should contain the result of a [FunctionCall]
|
||||
* made based on model prediction.
|
||||
* @public
|
||||
*/
|
||||
export interface FunctionResponse {
|
||||
name: string;
|
||||
response: object;
|
||||
}
|
||||
/**
|
||||
* Interface for sending an image.
|
||||
* @public
|
||||
*/
|
||||
export interface GenerativeContentBlob {
|
||||
mimeType: string;
|
||||
/**
|
||||
* Image as a base64 string.
|
||||
*/
|
||||
data: string;
|
||||
}
|
||||
/**
|
||||
* Data pointing to a file uploaded with the Files API.
|
||||
* @public
|
||||
*/
|
||||
export interface FileData {
|
||||
mimeType: string;
|
||||
fileUri: string;
|
||||
}
|
||||
/**
|
||||
* Code generated by the model that is meant to be executed, where the result
|
||||
* is returned to the model.
|
||||
* Only generated when using the code execution tool, in which the code will
|
||||
* be automatically executed, and a corresponding `CodeExecutionResult` will
|
||||
* also be generated.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export interface ExecutableCode {
|
||||
/**
|
||||
* Programming language of the `code`.
|
||||
*/
|
||||
language: ExecutableCodeLanguage;
|
||||
/**
|
||||
* The code to be executed.
|
||||
*/
|
||||
code: string;
|
||||
}
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export declare enum ExecutableCodeLanguage {
|
||||
LANGUAGE_UNSPECIFIED = "language_unspecified",
|
||||
PYTHON = "python"
|
||||
}
|
||||
/**
|
||||
* Result of executing the `ExecutableCode`.
|
||||
* Only generated when using code execution, and always follows a `Part`
|
||||
* containing the `ExecutableCode`.
|
||||
* @public
|
||||
*/
|
||||
export interface CodeExecutionResult {
|
||||
/**
|
||||
* Outcome of the code execution.
|
||||
*/
|
||||
outcome: Outcome;
|
||||
/**
|
||||
* Contains stdout when code execution is successful, stderr or other
|
||||
* description otherwise.
|
||||
*/
|
||||
output: string;
|
||||
}
|
||||
/**
|
||||
* Possible outcomes of code execution.
|
||||
* @public
|
||||
*/
|
||||
export declare enum Outcome {
|
||||
/**
|
||||
* Unspecified status. This value should not be used.
|
||||
*/
|
||||
OUTCOME_UNSPECIFIED = "outcome_unspecified",
|
||||
/**
|
||||
* Code execution completed successfully.
|
||||
*/
|
||||
OUTCOME_OK = "outcome_ok",
|
||||
/**
|
||||
* Code execution finished but with a failure. `stderr` should contain the
|
||||
* reason.
|
||||
*/
|
||||
OUTCOME_FAILED = "outcome_failed",
|
||||
/**
|
||||
* Code execution ran for too long, and was cancelled. There may or may not
|
||||
* be a partial output present.
|
||||
*/
|
||||
OUTCOME_DEADLINE_EXCEEDED = "outcome_deadline_exceeded"
|
||||
}
|
||||
105
node_modules/@google/generative-ai/dist/server/types/enums.d.ts
generated
vendored
Normal file
105
node_modules/@google/generative-ai/dist/server/types/enums.d.ts
generated
vendored
Normal file
@ -0,0 +1,105 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* Possible roles.
|
||||
* @public
|
||||
*/
|
||||
export declare const POSSIBLE_ROLES: readonly ["user", "model", "function", "system"];
|
||||
/**
|
||||
* Harm categories that would cause prompts or candidates to be blocked.
|
||||
* @public
|
||||
*/
|
||||
export declare enum HarmCategory {
|
||||
HARM_CATEGORY_UNSPECIFIED = "HARM_CATEGORY_UNSPECIFIED",
|
||||
HARM_CATEGORY_HATE_SPEECH = "HARM_CATEGORY_HATE_SPEECH",
|
||||
HARM_CATEGORY_SEXUALLY_EXPLICIT = "HARM_CATEGORY_SEXUALLY_EXPLICIT",
|
||||
HARM_CATEGORY_HARASSMENT = "HARM_CATEGORY_HARASSMENT",
|
||||
HARM_CATEGORY_DANGEROUS_CONTENT = "HARM_CATEGORY_DANGEROUS_CONTENT"
|
||||
}
|
||||
/**
|
||||
* Threshold above which a prompt or candidate will be blocked.
|
||||
* @public
|
||||
*/
|
||||
export declare enum HarmBlockThreshold {
|
||||
HARM_BLOCK_THRESHOLD_UNSPECIFIED = "HARM_BLOCK_THRESHOLD_UNSPECIFIED",
|
||||
BLOCK_LOW_AND_ABOVE = "BLOCK_LOW_AND_ABOVE",
|
||||
BLOCK_MEDIUM_AND_ABOVE = "BLOCK_MEDIUM_AND_ABOVE",
|
||||
BLOCK_ONLY_HIGH = "BLOCK_ONLY_HIGH",
|
||||
BLOCK_NONE = "BLOCK_NONE"
|
||||
}
|
||||
/**
|
||||
* Probability that a prompt or candidate matches a harm category.
|
||||
* @public
|
||||
*/
|
||||
export declare enum HarmProbability {
|
||||
HARM_PROBABILITY_UNSPECIFIED = "HARM_PROBABILITY_UNSPECIFIED",
|
||||
NEGLIGIBLE = "NEGLIGIBLE",
|
||||
LOW = "LOW",
|
||||
MEDIUM = "MEDIUM",
|
||||
HIGH = "HIGH"
|
||||
}
|
||||
/**
|
||||
* Reason that a prompt was blocked.
|
||||
* @public
|
||||
*/
|
||||
export declare enum BlockReason {
|
||||
BLOCKED_REASON_UNSPECIFIED = "BLOCKED_REASON_UNSPECIFIED",
|
||||
SAFETY = "SAFETY",
|
||||
OTHER = "OTHER"
|
||||
}
|
||||
/**
|
||||
* Reason that a candidate finished.
|
||||
* @public
|
||||
*/
|
||||
export declare enum FinishReason {
|
||||
FINISH_REASON_UNSPECIFIED = "FINISH_REASON_UNSPECIFIED",
|
||||
STOP = "STOP",
|
||||
MAX_TOKENS = "MAX_TOKENS",
|
||||
SAFETY = "SAFETY",
|
||||
RECITATION = "RECITATION",
|
||||
LANGUAGE = "LANGUAGE",
|
||||
OTHER = "OTHER"
|
||||
}
|
||||
/**
|
||||
* Task type for embedding content.
|
||||
* @public
|
||||
*/
|
||||
export declare enum TaskType {
|
||||
TASK_TYPE_UNSPECIFIED = "TASK_TYPE_UNSPECIFIED",
|
||||
RETRIEVAL_QUERY = "RETRIEVAL_QUERY",
|
||||
RETRIEVAL_DOCUMENT = "RETRIEVAL_DOCUMENT",
|
||||
SEMANTIC_SIMILARITY = "SEMANTIC_SIMILARITY",
|
||||
CLASSIFICATION = "CLASSIFICATION",
|
||||
CLUSTERING = "CLUSTERING"
|
||||
}
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export declare enum FunctionCallingMode {
|
||||
MODE_UNSPECIFIED = "MODE_UNSPECIFIED",
|
||||
AUTO = "AUTO",
|
||||
ANY = "ANY",
|
||||
NONE = "NONE"
|
||||
}
|
||||
/**
|
||||
* The mode of the predictor to be used in dynamic retrieval.
|
||||
* @public
|
||||
*/
|
||||
export declare enum DynamicRetrievalMode {
|
||||
MODE_UNSPECIFIED = "MODE_UNSPECIFIED",
|
||||
MODE_DYNAMIC = "MODE_DYNAMIC"
|
||||
}
|
||||
170
node_modules/@google/generative-ai/dist/server/types/function-calling.d.ts
generated
vendored
Normal file
170
node_modules/@google/generative-ai/dist/server/types/function-calling.d.ts
generated
vendored
Normal file
@ -0,0 +1,170 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { FunctionCallingMode } from "./enums";
|
||||
/**
|
||||
* Structured representation of a function declaration as defined by the
|
||||
* [OpenAPI 3.0 specification](https://spec.openapis.org/oas/v3.0.3). Included
|
||||
* in this declaration are the function name and parameters. This
|
||||
* FunctionDeclaration is a representation of a block of code that can be used
|
||||
* as a Tool by the model and executed by the client.
|
||||
* @public
|
||||
*/
|
||||
export declare interface FunctionDeclaration {
|
||||
/**
|
||||
* The name of the function to call. Must start with a letter or an
|
||||
* underscore. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with
|
||||
* a max length of 64.
|
||||
*/
|
||||
name: string;
|
||||
/**
|
||||
* Optional. Description and purpose of the function. Model uses it to decide
|
||||
* how and whether to call the function.
|
||||
*/
|
||||
description?: string;
|
||||
/**
|
||||
* Optional. Describes the parameters to this function in JSON Schema Object
|
||||
* format. Reflects the Open API 3.03 Parameter Object. string Key: the name
|
||||
* of the parameter. Parameter names are case sensitive. Schema Value: the
|
||||
* Schema defining the type used for the parameter. For function with no
|
||||
* parameters, this can be left unset.
|
||||
*
|
||||
* @example with 1 required and 1 optional parameter: type: OBJECT properties:
|
||||
* ```
|
||||
* param1:
|
||||
*
|
||||
* type: STRING
|
||||
* param2:
|
||||
*
|
||||
* type: INTEGER
|
||||
* required:
|
||||
*
|
||||
* - param1
|
||||
* ```
|
||||
*/
|
||||
parameters?: FunctionDeclarationSchema;
|
||||
}
|
||||
/**
|
||||
* A FunctionDeclarationsTool is a piece of code that enables the system to
|
||||
* interact with external systems to perform an action, or set of actions,
|
||||
* outside of knowledge and scope of the model.
|
||||
* @public
|
||||
*/
|
||||
export declare interface FunctionDeclarationsTool {
|
||||
/**
|
||||
* Optional. One or more function declarations
|
||||
* to be passed to the model along with the current user query. Model may
|
||||
* decide to call a subset of these functions by populating
|
||||
* [FunctionCall][content.part.functionCall] in the response. User should
|
||||
* provide a [FunctionResponse][content.part.functionResponse] for each
|
||||
* function call in the next turn. Based on the function responses, Model will
|
||||
* generate the final response back to the user. Maximum 64 function
|
||||
* declarations can be provided.
|
||||
*/
|
||||
functionDeclarations?: FunctionDeclaration[];
|
||||
}
|
||||
/**
|
||||
* Contains the list of OpenAPI data types
|
||||
* as defined by https://swagger.io/docs/specification/data-models/data-types/
|
||||
* @public
|
||||
*/
|
||||
export declare enum SchemaType {
|
||||
/** String type. */
|
||||
STRING = "string",
|
||||
/** Number type. */
|
||||
NUMBER = "number",
|
||||
/** Integer type. */
|
||||
INTEGER = "integer",
|
||||
/** Boolean type. */
|
||||
BOOLEAN = "boolean",
|
||||
/** Array type. */
|
||||
ARRAY = "array",
|
||||
/** Object type. */
|
||||
OBJECT = "object"
|
||||
}
|
||||
/**
|
||||
* Schema is used to define the format of input/output data.
|
||||
* Represents a select subset of an OpenAPI 3.0 schema object.
|
||||
* More fields may be added in the future as needed.
|
||||
* @public
|
||||
*/
|
||||
export interface Schema {
|
||||
/**
|
||||
* Optional. The type of the property. {@link
|
||||
* SchemaType}.
|
||||
*/
|
||||
type?: SchemaType;
|
||||
/** Optional. The format of the property. */
|
||||
format?: string;
|
||||
/** Optional. The description of the property. */
|
||||
description?: string;
|
||||
/** Optional. Whether the property is nullable. */
|
||||
nullable?: boolean;
|
||||
/** Optional. The items of the property. */
|
||||
items?: Schema;
|
||||
/** Optional. The enum of the property. */
|
||||
enum?: string[];
|
||||
/** Optional. Map of {@link Schema}. */
|
||||
properties?: {
|
||||
[k: string]: Schema;
|
||||
};
|
||||
/** Optional. Array of required property. */
|
||||
required?: string[];
|
||||
/** Optional. The example of the property. */
|
||||
example?: unknown;
|
||||
}
|
||||
/**
|
||||
* Schema for parameters passed to {@link FunctionDeclaration.parameters}.
|
||||
* @public
|
||||
*/
|
||||
export interface FunctionDeclarationSchema {
|
||||
/** The type of the parameter. */
|
||||
type: SchemaType;
|
||||
/** The format of the parameter. */
|
||||
properties: {
|
||||
[k: string]: FunctionDeclarationSchemaProperty;
|
||||
};
|
||||
/** Optional. Description of the parameter. */
|
||||
description?: string;
|
||||
/** Optional. Array of required parameters. */
|
||||
required?: string[];
|
||||
}
|
||||
/**
|
||||
* Schema for top-level function declaration
|
||||
* @public
|
||||
*/
|
||||
export interface FunctionDeclarationSchemaProperty extends Schema {
|
||||
}
|
||||
/**
|
||||
* Schema passed to `GenerationConfig.responseSchema`
|
||||
* @public
|
||||
*/
|
||||
export interface ResponseSchema extends Schema {
|
||||
}
|
||||
/**
|
||||
* Tool config. This config is shared for all tools provided in the request.
|
||||
* @public
|
||||
*/
|
||||
export interface ToolConfig {
|
||||
functionCallingConfig: FunctionCallingConfig;
|
||||
}
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export interface FunctionCallingConfig {
|
||||
mode?: FunctionCallingMode;
|
||||
allowedFunctionNames?: string[];
|
||||
}
|
||||
22
node_modules/@google/generative-ai/dist/server/types/index.d.ts
generated
vendored
Normal file
22
node_modules/@google/generative-ai/dist/server/types/index.d.ts
generated
vendored
Normal file
@ -0,0 +1,22 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export * from "./content";
|
||||
export * from "./enums";
|
||||
export * from "./requests";
|
||||
export * from "./responses";
|
||||
export * from "./search-grounding";
|
||||
export { CachedContent, CachedContentBase } from "./server/caching";
|
||||
223
node_modules/@google/generative-ai/dist/server/types/requests.d.ts
generated
vendored
Normal file
223
node_modules/@google/generative-ai/dist/server/types/requests.d.ts
generated
vendored
Normal file
@ -0,0 +1,223 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { CachedContent } from "./server/caching";
|
||||
import { Content, Part } from "./content";
|
||||
import { HarmBlockThreshold, HarmCategory, TaskType } from "./enums";
|
||||
import { FunctionDeclarationsTool, ResponseSchema, ToolConfig } from "./function-calling";
|
||||
import { GoogleSearchRetrievalTool } from "./search-grounding";
|
||||
/**
|
||||
* Base parameters for a number of methods.
|
||||
* @public
|
||||
*/
|
||||
export interface BaseParams {
|
||||
safetySettings?: SafetySetting[];
|
||||
generationConfig?: GenerationConfig;
|
||||
}
|
||||
/**
|
||||
* Params passed to {@link GoogleGenerativeAI.getGenerativeModel}.
|
||||
* @public
|
||||
*/
|
||||
export interface ModelParams extends BaseParams {
|
||||
model: string;
|
||||
tools?: Tool[];
|
||||
toolConfig?: ToolConfig;
|
||||
systemInstruction?: string | Part | Content;
|
||||
cachedContent?: CachedContent;
|
||||
}
|
||||
/**
|
||||
* Request sent to `generateContent` endpoint.
|
||||
* @public
|
||||
*/
|
||||
export interface GenerateContentRequest extends BaseParams {
|
||||
contents: Content[];
|
||||
tools?: Tool[];
|
||||
toolConfig?: ToolConfig;
|
||||
systemInstruction?: string | Part | Content;
|
||||
/**
|
||||
* This is the name of a `CachedContent` and not the cache object itself.
|
||||
*/
|
||||
cachedContent?: string;
|
||||
}
|
||||
/**
|
||||
* Request sent to `generateContent` endpoint.
|
||||
* @internal
|
||||
*/
|
||||
export interface _GenerateContentRequestInternal extends GenerateContentRequest {
|
||||
model?: string;
|
||||
}
|
||||
/**
|
||||
* Safety setting that can be sent as part of request parameters.
|
||||
* @public
|
||||
*/
|
||||
export interface SafetySetting {
|
||||
category: HarmCategory;
|
||||
threshold: HarmBlockThreshold;
|
||||
}
|
||||
/**
|
||||
* Config options for content-related requests
|
||||
* @public
|
||||
*/
|
||||
export interface GenerationConfig {
|
||||
candidateCount?: number;
|
||||
stopSequences?: string[];
|
||||
maxOutputTokens?: number;
|
||||
temperature?: number;
|
||||
topP?: number;
|
||||
topK?: number;
|
||||
/**
|
||||
* Output response mimetype of the generated candidate text.
|
||||
* Supported mimetype:
|
||||
* `text/plain`: (default) Text output.
|
||||
* `application/json`: JSON response in the candidates.
|
||||
*/
|
||||
responseMimeType?: string;
|
||||
/**
|
||||
* Output response schema of the generated candidate text.
|
||||
* Note: This only applies when the specified `responseMIMEType` supports a schema; currently
|
||||
* this is limited to `application/json`.
|
||||
*/
|
||||
responseSchema?: ResponseSchema;
|
||||
/**
|
||||
* Presence penalty applied to the next token's logprobs if the token has
|
||||
* already been seen in the response.
|
||||
*/
|
||||
presencePenalty?: number;
|
||||
/**
|
||||
* Frequency penalty applied to the next token's logprobs, multiplied by the
|
||||
* number of times each token has been seen in the respponse so far.
|
||||
*/
|
||||
frequencyPenalty?: number;
|
||||
/**
|
||||
* If True, export the logprobs results in response.
|
||||
*/
|
||||
responseLogprobs?: boolean;
|
||||
/**
|
||||
* Valid if responseLogProbs is set to True. This will set the number of top
|
||||
* logprobs to return at each decoding step in the logprobsResult.
|
||||
*/
|
||||
logprobs?: number;
|
||||
}
|
||||
/**
|
||||
* Params for {@link GenerativeModel.startChat}.
|
||||
* @public
|
||||
*/
|
||||
export interface StartChatParams extends BaseParams {
|
||||
history?: Content[];
|
||||
tools?: Tool[];
|
||||
toolConfig?: ToolConfig;
|
||||
systemInstruction?: string | Part | Content;
|
||||
/**
|
||||
* This is the name of a `CachedContent` and not the cache object itself.
|
||||
*/
|
||||
cachedContent?: string;
|
||||
}
|
||||
/**
|
||||
* Params for calling {@link GenerativeModel.countTokens}.
|
||||
*
|
||||
* The request must contain either a {@link Content} array or a
|
||||
* {@link GenerateContentRequest}, but not both. If both are provided
|
||||
* then a {@link GoogleGenerativeAIRequestInputError} is thrown.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export interface CountTokensRequest {
|
||||
generateContentRequest?: GenerateContentRequest;
|
||||
contents?: Content[];
|
||||
}
|
||||
/**
|
||||
* Params for calling {@link GenerativeModel.countTokens}
|
||||
* @internal
|
||||
*/
|
||||
export interface _CountTokensRequestInternal {
|
||||
generateContentRequest?: _GenerateContentRequestInternal;
|
||||
contents?: Content[];
|
||||
}
|
||||
/**
|
||||
* Params for calling {@link GenerativeModel.embedContent}
|
||||
* @public
|
||||
*/
|
||||
export interface EmbedContentRequest {
|
||||
content: Content;
|
||||
taskType?: TaskType;
|
||||
title?: string;
|
||||
}
|
||||
/**
|
||||
* Params for calling {@link GenerativeModel.batchEmbedContents}
|
||||
* @public
|
||||
*/
|
||||
export interface BatchEmbedContentsRequest {
|
||||
requests: EmbedContentRequest[];
|
||||
}
|
||||
/**
|
||||
* Params passed to getGenerativeModel() or GoogleAIFileManager().
|
||||
* @public
|
||||
*/
|
||||
export interface RequestOptions {
|
||||
/**
|
||||
* Request timeout in milliseconds.
|
||||
*/
|
||||
timeout?: number;
|
||||
/**
|
||||
* Version of API endpoint to call (e.g. "v1" or "v1beta"). If not specified,
|
||||
* defaults to latest stable version.
|
||||
*/
|
||||
apiVersion?: string;
|
||||
/**
|
||||
* Additional attribution information to include in the x-goog-api-client header.
|
||||
* Used by wrapper SDKs.
|
||||
*/
|
||||
apiClient?: string;
|
||||
/**
|
||||
* Base endpoint url. Defaults to "https://generativelanguage.googleapis.com"
|
||||
*/
|
||||
baseUrl?: string;
|
||||
/**
|
||||
* Custom HTTP request headers.
|
||||
*/
|
||||
customHeaders?: Headers | Record<string, string>;
|
||||
}
|
||||
/**
|
||||
* Params passed to atomic asynchronous operations.
|
||||
* @public
|
||||
*/
|
||||
export interface SingleRequestOptions extends RequestOptions {
|
||||
/**
|
||||
* An object that may be used to abort asynchronous requests. The request may
|
||||
* also be aborted due to the expiration of the timeout value, if provided.
|
||||
*
|
||||
* NOTE: AbortSignal is a client-only operation. Using it to cancel an
|
||||
* operation will not cancel the request in the service. You will still
|
||||
* be charged usage for any applicable operations.
|
||||
*/
|
||||
signal?: AbortSignal;
|
||||
}
|
||||
/**
|
||||
* Defines a tool that model can call to access external knowledge.
|
||||
* @public
|
||||
*/
|
||||
export declare type Tool = FunctionDeclarationsTool | CodeExecutionTool | GoogleSearchRetrievalTool;
|
||||
/**
|
||||
* Enables the model to execute code as part of generation.
|
||||
* @public
|
||||
*/
|
||||
export interface CodeExecutionTool {
|
||||
/**
|
||||
* Provide an empty object to enable code execution. This field may have
|
||||
* subfields added in the future.
|
||||
*/
|
||||
codeExecution: {};
|
||||
}
|
||||
216
node_modules/@google/generative-ai/dist/server/types/responses.d.ts
generated
vendored
Normal file
216
node_modules/@google/generative-ai/dist/server/types/responses.d.ts
generated
vendored
Normal file
@ -0,0 +1,216 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { Content, FunctionCall } from "./content";
|
||||
import { BlockReason, FinishReason, HarmCategory, HarmProbability } from "./enums";
|
||||
import { GroundingMetadata } from "./search-grounding";
|
||||
/**
|
||||
* Result object returned from generateContent() call.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export interface GenerateContentResult {
|
||||
response: EnhancedGenerateContentResponse;
|
||||
}
|
||||
/**
|
||||
* Result object returned from generateContentStream() call.
|
||||
* Iterate over `stream` to get chunks as they come in and/or
|
||||
* use the `response` promise to get the aggregated response when
|
||||
* the stream is done.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export interface GenerateContentStreamResult {
|
||||
stream: AsyncGenerator<EnhancedGenerateContentResponse>;
|
||||
response: Promise<EnhancedGenerateContentResponse>;
|
||||
}
|
||||
/**
|
||||
* Response object wrapped with helper methods.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export interface EnhancedGenerateContentResponse extends GenerateContentResponse {
|
||||
/**
|
||||
* Returns the text string assembled from all `Part`s of the first candidate
|
||||
* of the response, if available.
|
||||
* Throws if the prompt or candidate was blocked.
|
||||
*/
|
||||
text: () => string;
|
||||
/**
|
||||
* Deprecated: use `functionCalls()` instead.
|
||||
* @deprecated - use `functionCalls()` instead
|
||||
*/
|
||||
functionCall: () => FunctionCall | undefined;
|
||||
/**
|
||||
* Returns function calls found in any `Part`s of the first candidate
|
||||
* of the response, if available.
|
||||
* Throws if the prompt or candidate was blocked.
|
||||
*/
|
||||
functionCalls: () => FunctionCall[] | undefined;
|
||||
}
|
||||
/**
|
||||
* Individual response from {@link GenerativeModel.generateContent} and
|
||||
* {@link GenerativeModel.generateContentStream}.
|
||||
* `generateContentStream()` will return one in each chunk until
|
||||
* the stream is done.
|
||||
* @public
|
||||
*/
|
||||
export interface GenerateContentResponse {
|
||||
/** Candidate responses from the model. */
|
||||
candidates?: GenerateContentCandidate[];
|
||||
/** The prompt's feedback related to the content filters. */
|
||||
promptFeedback?: PromptFeedback;
|
||||
/** Metadata on the generation request's token usage. */
|
||||
usageMetadata?: UsageMetadata;
|
||||
}
|
||||
/**
|
||||
* Logprobs Result
|
||||
* @public
|
||||
*/
|
||||
export interface LogprobsResult {
|
||||
/** Length = total number of decoding steps. */
|
||||
topCandidates: TopCandidates[];
|
||||
/**
|
||||
* Length = total number of decoding steps.
|
||||
* The chosen candidates may or may not be in topCandidates.
|
||||
*/
|
||||
chosenCandidates: LogprobsCandidate[];
|
||||
}
|
||||
/**
|
||||
* Candidate for the logprobs token and score.
|
||||
* @public
|
||||
*/
|
||||
export interface LogprobsCandidate {
|
||||
/** The candidate's token string value. */
|
||||
token: string;
|
||||
/** The candidate's token id value. */
|
||||
tokenID: number;
|
||||
/** The candidate's log probability. */
|
||||
logProbability: number;
|
||||
}
|
||||
/**
|
||||
* Candidates with top log probabilities at each decoding step
|
||||
*/
|
||||
export interface TopCandidates {
|
||||
/** Sorted by log probability in descending order. */
|
||||
candidates: LogprobsCandidate[];
|
||||
}
|
||||
/**
|
||||
* Metadata on the generation request's token usage.
|
||||
* @public
|
||||
*/
|
||||
export interface UsageMetadata {
|
||||
/** Number of tokens in the prompt. */
|
||||
promptTokenCount: number;
|
||||
/** Total number of tokens across the generated candidates. */
|
||||
candidatesTokenCount: number;
|
||||
/** Total token count for the generation request (prompt + candidates). */
|
||||
totalTokenCount: number;
|
||||
/** Total token count in the cached part of the prompt, i.e. in the cached content. */
|
||||
cachedContentTokenCount?: number;
|
||||
}
|
||||
/**
|
||||
* If the prompt was blocked, this will be populated with `blockReason` and
|
||||
* the relevant `safetyRatings`.
|
||||
* @public
|
||||
*/
|
||||
export interface PromptFeedback {
|
||||
blockReason: BlockReason;
|
||||
safetyRatings: SafetyRating[];
|
||||
blockReasonMessage?: string;
|
||||
}
|
||||
/**
|
||||
* A candidate returned as part of a {@link GenerateContentResponse}.
|
||||
* @public
|
||||
*/
|
||||
export interface GenerateContentCandidate {
|
||||
index: number;
|
||||
content: Content;
|
||||
finishReason?: FinishReason;
|
||||
finishMessage?: string;
|
||||
safetyRatings?: SafetyRating[];
|
||||
citationMetadata?: CitationMetadata;
|
||||
/** Average log probability score of the candidate. */
|
||||
avgLogprobs?: number;
|
||||
/** Log-likelihood scores for the response tokens and top tokens. */
|
||||
logprobsResult?: LogprobsResult;
|
||||
/** Search grounding metadata. */
|
||||
groundingMetadata?: GroundingMetadata;
|
||||
}
|
||||
/**
|
||||
* Citation metadata that may be found on a {@link GenerateContentCandidate}.
|
||||
* @public
|
||||
*/
|
||||
export interface CitationMetadata {
|
||||
citationSources: CitationSource[];
|
||||
}
|
||||
/**
|
||||
* A single citation source.
|
||||
* @public
|
||||
*/
|
||||
export interface CitationSource {
|
||||
startIndex?: number;
|
||||
endIndex?: number;
|
||||
uri?: string;
|
||||
license?: string;
|
||||
}
|
||||
/**
|
||||
* A safety rating associated with a {@link GenerateContentCandidate}
|
||||
* @public
|
||||
*/
|
||||
export interface SafetyRating {
|
||||
category: HarmCategory;
|
||||
probability: HarmProbability;
|
||||
}
|
||||
/**
|
||||
* Response from calling {@link GenerativeModel.countTokens}.
|
||||
* @public
|
||||
*/
|
||||
export interface CountTokensResponse {
|
||||
totalTokens: number;
|
||||
}
|
||||
/**
|
||||
* Response from calling {@link GenerativeModel.embedContent}.
|
||||
* @public
|
||||
*/
|
||||
export interface EmbedContentResponse {
|
||||
embedding: ContentEmbedding;
|
||||
}
|
||||
/**
|
||||
* Response from calling {@link GenerativeModel.batchEmbedContents}.
|
||||
* @public
|
||||
*/
|
||||
export interface BatchEmbedContentsResponse {
|
||||
embeddings: ContentEmbedding[];
|
||||
}
|
||||
/**
|
||||
* A single content embedding.
|
||||
* @public
|
||||
*/
|
||||
export interface ContentEmbedding {
|
||||
values: number[];
|
||||
}
|
||||
/**
|
||||
* Details object that may be included in an error response.
|
||||
* @public
|
||||
*/
|
||||
export interface ErrorDetails {
|
||||
"@type"?: string;
|
||||
reason?: string;
|
||||
domain?: string;
|
||||
metadata?: Record<string, unknown>;
|
||||
[key: string]: unknown;
|
||||
}
|
||||
177
node_modules/@google/generative-ai/dist/server/types/search-grounding.d.ts
generated
vendored
Normal file
177
node_modules/@google/generative-ai/dist/server/types/search-grounding.d.ts
generated
vendored
Normal file
@ -0,0 +1,177 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { DynamicRetrievalMode } from "./enums";
|
||||
/**
|
||||
* Retrieval tool that is powered by Google search.
|
||||
* @public
|
||||
*/
|
||||
export declare interface GoogleSearchRetrievalTool {
|
||||
/**
|
||||
* Google search retrieval tool config.
|
||||
*/
|
||||
googleSearchRetrieval?: GoogleSearchRetrieval;
|
||||
}
|
||||
/**
|
||||
* Retrieval tool that is powered by Google search.
|
||||
* @public
|
||||
*/
|
||||
export declare interface GoogleSearchRetrieval {
|
||||
/**
|
||||
* Specifies the dynamic retrieval configuration for the given source.
|
||||
*/
|
||||
dynamicRetrievalConfig?: DynamicRetrievalConfig;
|
||||
}
|
||||
/**
|
||||
* Specifies the dynamic retrieval configuration for the given source.
|
||||
* @public
|
||||
*/
|
||||
export declare interface DynamicRetrievalConfig {
|
||||
/**
|
||||
* The mode of the predictor to be used in dynamic retrieval.
|
||||
*/
|
||||
mode?: DynamicRetrievalMode;
|
||||
/**
|
||||
* The threshold to be used in dynamic retrieval. If not set, a system default
|
||||
* value is used.
|
||||
*/
|
||||
dynamicThreshold?: number;
|
||||
}
|
||||
/**
|
||||
* Metadata returned to client when grounding is enabled.
|
||||
* @public
|
||||
*/
|
||||
export declare interface GroundingMetadata {
|
||||
/**
|
||||
* Google search entry for the following-up web searches.
|
||||
*/
|
||||
searchEntryPoint?: SearchEntryPoint;
|
||||
/**
|
||||
* List of supporting references retrieved from specified grounding source.
|
||||
*/
|
||||
groundingChuncks?: GroundingChunk[];
|
||||
/**
|
||||
* List of grounding support.
|
||||
*/
|
||||
groundingSupport?: GroundingSupport[];
|
||||
/**
|
||||
* Metadata related to retrieval in the grounding flow.
|
||||
*/
|
||||
retrievalMetadata?: RetrievalMetadata;
|
||||
/**
|
||||
* * Web search queries for the following-up web search.
|
||||
*/
|
||||
webSearchQueries: string[];
|
||||
}
|
||||
/**
|
||||
* Google search entry point.
|
||||
* @public
|
||||
*/
|
||||
export declare interface SearchEntryPoint {
|
||||
/**
|
||||
* Web content snippet that can be embedded in a web page or an app webview.
|
||||
*/
|
||||
renderedContent?: string;
|
||||
/**
|
||||
* Base64 encoded JSON representing array of <search term, search url> tuple.
|
||||
*/
|
||||
sdkBlob?: string;
|
||||
}
|
||||
/**
|
||||
* Grounding chunk.
|
||||
* @public
|
||||
*/
|
||||
export declare interface GroundingChunk {
|
||||
/**
|
||||
* Chunk from the web.
|
||||
*/
|
||||
web?: GroundingChunkWeb;
|
||||
}
|
||||
/**
|
||||
* Chunk from the web.
|
||||
* @public
|
||||
*/
|
||||
export declare interface GroundingChunkWeb {
|
||||
/**
|
||||
* URI reference of the chunk.
|
||||
*/
|
||||
uri?: string;
|
||||
/**
|
||||
* Title of the chunk.
|
||||
*/
|
||||
title?: string;
|
||||
}
|
||||
/**
|
||||
* Grounding support.
|
||||
* @public
|
||||
*/
|
||||
export declare interface GroundingSupport {
|
||||
/**
|
||||
* URI reference of the chunk.
|
||||
*/
|
||||
segment?: string;
|
||||
/**
|
||||
* A list of indices (into 'grounding_chunk') specifying the citations
|
||||
* associated with the claim. For instance [1,3,4] means that
|
||||
* grounding_chunk[1], grounding_chunk[3], grounding_chunk[4] are the
|
||||
* retrieved content attributed to the claim.
|
||||
*/
|
||||
groundingChunckIndices?: number[];
|
||||
/**
|
||||
* Confidence score of the support references. Ranges from 0 to 1. 1 is the
|
||||
* most confident. This list must have the same size as the
|
||||
* grounding_chunk_indices.
|
||||
*/
|
||||
confidenceScores?: number[];
|
||||
}
|
||||
/**
|
||||
* Segment of the content.
|
||||
* @public
|
||||
*/
|
||||
export declare interface GroundingSupportSegment {
|
||||
/**
|
||||
* The index of a Part object within its parent Content object.
|
||||
*/
|
||||
partIndex?: number;
|
||||
/**
|
||||
* Start index in the given Part, measured in bytes. Offset from the start of
|
||||
* the Part, inclusive, starting at zero.
|
||||
*/
|
||||
startIndex?: number;
|
||||
/**
|
||||
* End index in the given Part, measured in bytes. Offset from the start of
|
||||
* the Part, exclusive, starting at zero.
|
||||
*/
|
||||
endIndex?: number;
|
||||
/**
|
||||
* The text corresponding to the segment from the response.
|
||||
*/
|
||||
text?: string;
|
||||
}
|
||||
/**
|
||||
* Metadata related to retrieval in the grounding flow.
|
||||
* @public
|
||||
*/
|
||||
export declare interface RetrievalMetadata {
|
||||
/**
|
||||
* Score indicating how likely information from google search could help
|
||||
* answer the prompt. The score is in the range [0, 1], where 0 is the least
|
||||
* likely and 1 is the most likely. This score is only populated when google
|
||||
* search grounding and dynamic retrieval is enabled. It will becompared to
|
||||
* the threshold to determine whether to trigger google search.
|
||||
*/
|
||||
googleSearchDynamicRetrievalScore?: number;
|
||||
}
|
||||
111
node_modules/@google/generative-ai/dist/server/types/server/caching.d.ts
generated
vendored
Normal file
111
node_modules/@google/generative-ai/dist/server/types/server/caching.d.ts
generated
vendored
Normal file
@ -0,0 +1,111 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { Content, Part } from "../content";
|
||||
import { ToolConfig } from "../function-calling";
|
||||
import { Tool } from "../requests";
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export interface CachedContentBase {
|
||||
model?: string;
|
||||
contents: Content[];
|
||||
tools?: Tool[];
|
||||
toolConfig?: ToolConfig;
|
||||
systemInstruction?: string | Part | Content;
|
||||
/**
|
||||
* Expiration time in ISO string format. Specify either this or `ttlSeconds`
|
||||
* when creating a `CachedContent`.
|
||||
*/
|
||||
expireTime?: string;
|
||||
displayName?: string;
|
||||
}
|
||||
/**
|
||||
* Describes `CachedContent` interface for sending to the server (if creating)
|
||||
* or received from the server (using getters or list methods).
|
||||
* @public
|
||||
*/
|
||||
export interface CachedContent extends CachedContentBase {
|
||||
name?: string;
|
||||
/**
|
||||
* protobuf.Duration format (ex. "3.0001s").
|
||||
*/
|
||||
ttl?: string;
|
||||
/**
|
||||
* `CachedContent` creation time in ISO string format.
|
||||
*/
|
||||
createTime?: string;
|
||||
/**
|
||||
* `CachedContent` update time in ISO string format.
|
||||
*/
|
||||
updateTime?: string;
|
||||
}
|
||||
/**
|
||||
* Params to pass to {@link GoogleAICacheManager.create}.
|
||||
* @public
|
||||
*/
|
||||
export interface CachedContentCreateParams extends CachedContentBase {
|
||||
/**
|
||||
* `CachedContent` ttl in seconds. Specify either this or `expireTime`
|
||||
* when creating a `CachedContent`.
|
||||
*/
|
||||
ttlSeconds?: number;
|
||||
}
|
||||
/**
|
||||
* Fields that can be updated in an existing content cache.
|
||||
* @public
|
||||
*/
|
||||
export interface CachedContentUpdateInputFields {
|
||||
ttlSeconds?: number;
|
||||
expireTime?: string;
|
||||
}
|
||||
/**
|
||||
* Params to pass to {@link GoogleAICacheManager.update}.
|
||||
* @public
|
||||
*/
|
||||
export interface CachedContentUpdateParams {
|
||||
cachedContent: CachedContentUpdateInputFields;
|
||||
/**
|
||||
* protobuf FieldMask. If not specified, updates all provided fields.
|
||||
*/
|
||||
updateMask?: string[];
|
||||
}
|
||||
/**
|
||||
* Fields that can be updated in an existing content cache.
|
||||
* @internal
|
||||
*/
|
||||
export interface _CachedContentUpdateRequestFields {
|
||||
ttl?: string;
|
||||
expireTime?: string;
|
||||
}
|
||||
/**
|
||||
* Params as sent to the backend (ttl instead of ttlSeconds).
|
||||
* @internal
|
||||
*/
|
||||
export interface _CachedContentUpdateRequest {
|
||||
cachedContent: _CachedContentUpdateRequestFields;
|
||||
/**
|
||||
* protobuf FieldMask
|
||||
*/
|
||||
updateMask?: string[];
|
||||
}
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export interface ListCacheResponse {
|
||||
cachedContents: CachedContent[];
|
||||
nextPageToken?: string;
|
||||
}
|
||||
86
node_modules/@google/generative-ai/dist/server/types/server/files.d.ts
generated
vendored
Normal file
86
node_modules/@google/generative-ai/dist/server/types/server/files.d.ts
generated
vendored
Normal file
@ -0,0 +1,86 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { RpcStatus } from "./shared";
|
||||
/**
|
||||
* Metadata to provide alongside a file upload
|
||||
* @public
|
||||
*/
|
||||
export interface FileMetadata {
|
||||
name?: string;
|
||||
displayName?: string;
|
||||
mimeType: string;
|
||||
}
|
||||
/**
|
||||
* File metadata response from server.
|
||||
* @public
|
||||
*/
|
||||
export interface FileMetadataResponse {
|
||||
name: string;
|
||||
displayName?: string;
|
||||
mimeType: string;
|
||||
sizeBytes: string;
|
||||
createTime: string;
|
||||
updateTime: string;
|
||||
expirationTime: string;
|
||||
sha256Hash: string;
|
||||
uri: string;
|
||||
state: FileState;
|
||||
/**
|
||||
* Error populated if file processing has failed.
|
||||
*/
|
||||
error?: RpcStatus;
|
||||
/**
|
||||
* Video metadata populated after processing is complete.
|
||||
*/
|
||||
videoMetadata?: VideoMetadata;
|
||||
}
|
||||
/**
|
||||
* Response from calling {@link GoogleAIFileManager.listFiles}
|
||||
* @public
|
||||
*/
|
||||
export interface ListFilesResponse {
|
||||
files: FileMetadataResponse[];
|
||||
nextPageToken?: string;
|
||||
}
|
||||
/**
|
||||
* Response from calling {@link GoogleAIFileManager.uploadFile}
|
||||
* @public
|
||||
*/
|
||||
export interface UploadFileResponse {
|
||||
file: FileMetadataResponse;
|
||||
}
|
||||
/**
|
||||
* Processing state of the `File`.
|
||||
* @public
|
||||
*/
|
||||
export declare enum FileState {
|
||||
STATE_UNSPECIFIED = "STATE_UNSPECIFIED",
|
||||
PROCESSING = "PROCESSING",
|
||||
ACTIVE = "ACTIVE",
|
||||
FAILED = "FAILED"
|
||||
}
|
||||
/**
|
||||
* Metadata populated when video has been processed.
|
||||
* @public
|
||||
*/
|
||||
export interface VideoMetadata {
|
||||
/**
|
||||
* The video duration in
|
||||
* protobuf {@link https://cloud.google.com/ruby/docs/reference/google-cloud-workflows-v1/latest/Google-Protobuf-Duration#json-mapping | Duration} format.
|
||||
*/
|
||||
videoDuration: string;
|
||||
}
|
||||
22
node_modules/@google/generative-ai/dist/server/types/server/index.d.ts
generated
vendored
Normal file
22
node_modules/@google/generative-ai/dist/server/types/server/index.d.ts
generated
vendored
Normal file
@ -0,0 +1,22 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export * from "./files";
|
||||
export * from "./caching";
|
||||
export * from "./shared";
|
||||
export { RequestOptions, Tool, CodeExecutionTool, SingleRequestOptions, } from "../requests";
|
||||
export * from "../content";
|
||||
export { FunctionCallingMode } from "../enums";
|
||||
45
node_modules/@google/generative-ai/dist/server/types/server/shared.d.ts
generated
vendored
Normal file
45
node_modules/@google/generative-ai/dist/server/types/server/shared.d.ts
generated
vendored
Normal file
@ -0,0 +1,45 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { ErrorDetails } from "../responses";
|
||||
export { ErrorDetails };
|
||||
/**
|
||||
* Standard RPC error status object.
|
||||
* @public
|
||||
*/
|
||||
export interface RpcStatus {
|
||||
/**
|
||||
* Error status code
|
||||
*/
|
||||
code: number;
|
||||
/**
|
||||
* A developer-facing error message.
|
||||
*/
|
||||
message: string;
|
||||
/**
|
||||
* A list of messages that carry the error details.
|
||||
*/
|
||||
details?: ErrorDetails[];
|
||||
}
|
||||
/**
|
||||
* Params to pass to {@link GoogleAIFileManager.listFiles} or
|
||||
* {@link GoogleAICacheManager.list}
|
||||
* @public
|
||||
*/
|
||||
export interface ListParams {
|
||||
pageSize?: number;
|
||||
pageToken?: string;
|
||||
}
|
||||
50
node_modules/@google/generative-ai/dist/src/errors.d.ts
generated
vendored
Normal file
50
node_modules/@google/generative-ai/dist/src/errors.d.ts
generated
vendored
Normal file
@ -0,0 +1,50 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { ErrorDetails } from "../types";
|
||||
/**
|
||||
* Basic error type for this SDK.
|
||||
* @public
|
||||
*/
|
||||
export declare class GoogleGenerativeAIError extends Error {
|
||||
constructor(message: string);
|
||||
}
|
||||
/**
|
||||
* Errors in the contents of a response from the model. This includes parsing
|
||||
* errors, or responses including a safety block reason.
|
||||
* @public
|
||||
*/
|
||||
export declare class GoogleGenerativeAIResponseError<T> extends GoogleGenerativeAIError {
|
||||
response?: T;
|
||||
constructor(message: string, response?: T);
|
||||
}
|
||||
/**
|
||||
* Error class covering HTTP errors when calling the server. Includes HTTP
|
||||
* status, statusText, and optional details, if provided in the server response.
|
||||
* @public
|
||||
*/
|
||||
export declare class GoogleGenerativeAIFetchError extends GoogleGenerativeAIError {
|
||||
status?: number;
|
||||
statusText?: string;
|
||||
errorDetails?: ErrorDetails[];
|
||||
constructor(message: string, status?: number, statusText?: string, errorDetails?: ErrorDetails[]);
|
||||
}
|
||||
/**
|
||||
* Errors in the contents of a request originating from user input.
|
||||
* @public
|
||||
*/
|
||||
export declare class GoogleGenerativeAIRequestInputError extends GoogleGenerativeAIError {
|
||||
}
|
||||
36
node_modules/@google/generative-ai/dist/src/gen-ai.d.ts
generated
vendored
Normal file
36
node_modules/@google/generative-ai/dist/src/gen-ai.d.ts
generated
vendored
Normal file
@ -0,0 +1,36 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { CachedContent, ModelParams, RequestOptions } from "../types";
|
||||
import { GenerativeModel } from "./models/generative-model";
|
||||
export { ChatSession } from "./methods/chat-session";
|
||||
export { GenerativeModel };
|
||||
/**
|
||||
* Top-level class for this SDK
|
||||
* @public
|
||||
*/
|
||||
export declare class GoogleGenerativeAI {
|
||||
apiKey: string;
|
||||
constructor(apiKey: string);
|
||||
/**
|
||||
* Gets a {@link GenerativeModel} instance for the provided model name.
|
||||
*/
|
||||
getGenerativeModel(modelParams: ModelParams, requestOptions?: RequestOptions): GenerativeModel;
|
||||
/**
|
||||
* Creates a {@link GenerativeModel} instance from provided content cache.
|
||||
*/
|
||||
getGenerativeModelFromCachedContent(cachedContent: CachedContent, modelParams?: Partial<ModelParams>, requestOptions?: RequestOptions): GenerativeModel;
|
||||
}
|
||||
19
node_modules/@google/generative-ai/dist/src/index.d.ts
generated
vendored
Normal file
19
node_modules/@google/generative-ai/dist/src/index.d.ts
generated
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export * from "../types";
|
||||
export * from "./gen-ai";
|
||||
export * from "./errors";
|
||||
18
node_modules/@google/generative-ai/dist/src/methods/chat-session-helpers.d.ts
generated
vendored
Normal file
18
node_modules/@google/generative-ai/dist/src/methods/chat-session-helpers.d.ts
generated
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { Content } from "../../types";
|
||||
export declare function validateChatHistory(history: Content[]): void;
|
||||
57
node_modules/@google/generative-ai/dist/src/methods/chat-session.d.ts
generated
vendored
Normal file
57
node_modules/@google/generative-ai/dist/src/methods/chat-session.d.ts
generated
vendored
Normal file
@ -0,0 +1,57 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { Content, GenerateContentResult, GenerateContentStreamResult, Part, RequestOptions, SingleRequestOptions, StartChatParams } from "../../types";
|
||||
/**
|
||||
* ChatSession class that enables sending chat messages and stores
|
||||
* history of sent and received messages so far.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export declare class ChatSession {
|
||||
model: string;
|
||||
params?: StartChatParams;
|
||||
private _requestOptions;
|
||||
private _apiKey;
|
||||
private _history;
|
||||
private _sendPromise;
|
||||
constructor(apiKey: string, model: string, params?: StartChatParams, _requestOptions?: RequestOptions);
|
||||
/**
|
||||
* Gets the chat history so far. Blocked prompts are not added to history.
|
||||
* Blocked candidates are not added to history, nor are the prompts that
|
||||
* generated them.
|
||||
*/
|
||||
getHistory(): Promise<Content[]>;
|
||||
/**
|
||||
* Sends a chat message and receives a non-streaming
|
||||
* {@link GenerateContentResult}.
|
||||
*
|
||||
* Fields set in the optional {@link SingleRequestOptions} parameter will
|
||||
* take precedence over the {@link RequestOptions} values provided to
|
||||
* {@link GoogleGenerativeAI.getGenerativeModel }.
|
||||
*/
|
||||
sendMessage(request: string | Array<string | Part>, requestOptions?: SingleRequestOptions): Promise<GenerateContentResult>;
|
||||
/**
|
||||
* Sends a chat message and receives the response as a
|
||||
* {@link GenerateContentStreamResult} containing an iterable stream
|
||||
* and a response promise.
|
||||
*
|
||||
* Fields set in the optional {@link SingleRequestOptions} parameter will
|
||||
* take precedence over the {@link RequestOptions} values provided to
|
||||
* {@link GoogleGenerativeAI.getGenerativeModel }.
|
||||
*/
|
||||
sendMessageStream(request: string | Array<string | Part>, requestOptions?: SingleRequestOptions): Promise<GenerateContentStreamResult>;
|
||||
}
|
||||
18
node_modules/@google/generative-ai/dist/src/methods/count-tokens.d.ts
generated
vendored
Normal file
18
node_modules/@google/generative-ai/dist/src/methods/count-tokens.d.ts
generated
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { CountTokensRequest, CountTokensResponse, SingleRequestOptions } from "../../types";
|
||||
export declare function countTokens(apiKey: string, model: string, params: CountTokensRequest, singleRequestOptions: SingleRequestOptions): Promise<CountTokensResponse>;
|
||||
19
node_modules/@google/generative-ai/dist/src/methods/embed-content.d.ts
generated
vendored
Normal file
19
node_modules/@google/generative-ai/dist/src/methods/embed-content.d.ts
generated
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { BatchEmbedContentsRequest, BatchEmbedContentsResponse, EmbedContentRequest, EmbedContentResponse, RequestOptions } from "../../types";
|
||||
export declare function embedContent(apiKey: string, model: string, params: EmbedContentRequest, requestOptions?: RequestOptions): Promise<EmbedContentResponse>;
|
||||
export declare function batchEmbedContents(apiKey: string, model: string, params: BatchEmbedContentsRequest, requestOptions?: RequestOptions): Promise<BatchEmbedContentsResponse>;
|
||||
19
node_modules/@google/generative-ai/dist/src/methods/generate-content.d.ts
generated
vendored
Normal file
19
node_modules/@google/generative-ai/dist/src/methods/generate-content.d.ts
generated
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { GenerateContentRequest, GenerateContentResult, GenerateContentStreamResult, SingleRequestOptions } from "../../types";
|
||||
export declare function generateContentStream(apiKey: string, model: string, params: GenerateContentRequest, requestOptions: SingleRequestOptions): Promise<GenerateContentStreamResult>;
|
||||
export declare function generateContent(apiKey: string, model: string, params: GenerateContentRequest, requestOptions?: SingleRequestOptions): Promise<GenerateContentResult>;
|
||||
83
node_modules/@google/generative-ai/dist/src/models/generative-model.d.ts
generated
vendored
Normal file
83
node_modules/@google/generative-ai/dist/src/models/generative-model.d.ts
generated
vendored
Normal file
@ -0,0 +1,83 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { BatchEmbedContentsRequest, BatchEmbedContentsResponse, CachedContent, Content, CountTokensRequest, CountTokensResponse, EmbedContentRequest, EmbedContentResponse, GenerateContentRequest, GenerateContentResult, GenerateContentStreamResult, GenerationConfig, ModelParams, Part, RequestOptions, SafetySetting, SingleRequestOptions, StartChatParams, Tool, ToolConfig } from "../../types";
|
||||
import { ChatSession } from "../methods/chat-session";
|
||||
/**
|
||||
* Class for generative model APIs.
|
||||
* @public
|
||||
*/
|
||||
export declare class GenerativeModel {
|
||||
apiKey: string;
|
||||
private _requestOptions;
|
||||
model: string;
|
||||
generationConfig: GenerationConfig;
|
||||
safetySettings: SafetySetting[];
|
||||
tools?: Tool[];
|
||||
toolConfig?: ToolConfig;
|
||||
systemInstruction?: Content;
|
||||
cachedContent: CachedContent;
|
||||
constructor(apiKey: string, modelParams: ModelParams, _requestOptions?: RequestOptions);
|
||||
/**
|
||||
* Makes a single non-streaming call to the model
|
||||
* and returns an object containing a single {@link GenerateContentResponse}.
|
||||
*
|
||||
* Fields set in the optional {@link SingleRequestOptions} parameter will
|
||||
* take precedence over the {@link RequestOptions} values provided to
|
||||
* {@link GoogleGenerativeAI.getGenerativeModel }.
|
||||
*/
|
||||
generateContent(request: GenerateContentRequest | string | Array<string | Part>, requestOptions?: SingleRequestOptions): Promise<GenerateContentResult>;
|
||||
/**
|
||||
* Makes a single streaming call to the model and returns an object
|
||||
* containing an iterable stream that iterates over all chunks in the
|
||||
* streaming response as well as a promise that returns the final
|
||||
* aggregated response.
|
||||
*
|
||||
* Fields set in the optional {@link SingleRequestOptions} parameter will
|
||||
* take precedence over the {@link RequestOptions} values provided to
|
||||
* {@link GoogleGenerativeAI.getGenerativeModel }.
|
||||
*/
|
||||
generateContentStream(request: GenerateContentRequest | string | Array<string | Part>, requestOptions?: SingleRequestOptions): Promise<GenerateContentStreamResult>;
|
||||
/**
|
||||
* Gets a new {@link ChatSession} instance which can be used for
|
||||
* multi-turn chats.
|
||||
*/
|
||||
startChat(startChatParams?: StartChatParams): ChatSession;
|
||||
/**
|
||||
* Counts the tokens in the provided request.
|
||||
*
|
||||
* Fields set in the optional {@link SingleRequestOptions} parameter will
|
||||
* take precedence over the {@link RequestOptions} values provided to
|
||||
* {@link GoogleGenerativeAI.getGenerativeModel }.
|
||||
*/
|
||||
countTokens(request: CountTokensRequest | string | Array<string | Part>, requestOptions?: SingleRequestOptions): Promise<CountTokensResponse>;
|
||||
/**
|
||||
* Embeds the provided content.
|
||||
*
|
||||
* Fields set in the optional {@link SingleRequestOptions} parameter will
|
||||
* take precedence over the {@link RequestOptions} values provided to
|
||||
* {@link GoogleGenerativeAI.getGenerativeModel }.
|
||||
*/
|
||||
embedContent(request: EmbedContentRequest | string | Array<string | Part>, requestOptions?: SingleRequestOptions): Promise<EmbedContentResponse>;
|
||||
/**
|
||||
* Embeds an array of {@link EmbedContentRequest}s.
|
||||
*
|
||||
* Fields set in the optional {@link SingleRequestOptions} parameter will
|
||||
* take precedence over the {@link RequestOptions} values provided to
|
||||
* {@link GoogleGenerativeAI.getGenerativeModel }.
|
||||
*/
|
||||
batchEmbedContents(batchEmbedContentRequest: BatchEmbedContentsRequest, requestOptions?: SingleRequestOptions): Promise<BatchEmbedContentsResponse>;
|
||||
}
|
||||
22
node_modules/@google/generative-ai/dist/src/requests/request-helpers.d.ts
generated
vendored
Normal file
22
node_modules/@google/generative-ai/dist/src/requests/request-helpers.d.ts
generated
vendored
Normal file
@ -0,0 +1,22 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { Content, CountTokensRequest, EmbedContentRequest, GenerateContentRequest, ModelParams, Part, _CountTokensRequestInternal } from "../../types";
|
||||
export declare function formatSystemInstruction(input?: string | Part | Content): Content | undefined;
|
||||
export declare function formatNewContent(request: string | Array<string | Part>): Content;
|
||||
export declare function formatCountTokensInput(params: CountTokensRequest | string | Array<string | Part>, modelParams?: ModelParams): _CountTokensRequestInternal;
|
||||
export declare function formatGenerateContentInput(params: GenerateContentRequest | string | Array<string | Part>): GenerateContentRequest;
|
||||
export declare function formatEmbedContentInput(params: EmbedContentRequest | string | Array<string | Part>): EmbedContentRequest;
|
||||
46
node_modules/@google/generative-ai/dist/src/requests/request.d.ts
generated
vendored
Normal file
46
node_modules/@google/generative-ai/dist/src/requests/request.d.ts
generated
vendored
Normal file
@ -0,0 +1,46 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { RequestOptions, SingleRequestOptions } from "../../types";
|
||||
export declare const DEFAULT_BASE_URL = "https://generativelanguage.googleapis.com";
|
||||
export declare const DEFAULT_API_VERSION = "v1beta";
|
||||
export declare enum Task {
|
||||
GENERATE_CONTENT = "generateContent",
|
||||
STREAM_GENERATE_CONTENT = "streamGenerateContent",
|
||||
COUNT_TOKENS = "countTokens",
|
||||
EMBED_CONTENT = "embedContent",
|
||||
BATCH_EMBED_CONTENTS = "batchEmbedContents"
|
||||
}
|
||||
export declare class RequestUrl {
|
||||
model: string;
|
||||
task: Task;
|
||||
apiKey: string;
|
||||
stream: boolean;
|
||||
requestOptions: RequestOptions;
|
||||
constructor(model: string, task: Task, apiKey: string, stream: boolean, requestOptions: RequestOptions);
|
||||
toString(): string;
|
||||
}
|
||||
/**
|
||||
* Simple, but may become more complex if we add more versions to log.
|
||||
*/
|
||||
export declare function getClientHeaders(requestOptions: RequestOptions): string;
|
||||
export declare function getHeaders(url: RequestUrl): Promise<Headers>;
|
||||
export declare function constructModelRequest(model: string, task: Task, apiKey: string, stream: boolean, body: string, requestOptions: SingleRequestOptions): Promise<{
|
||||
url: string;
|
||||
fetchOptions: RequestInit;
|
||||
}>;
|
||||
export declare function makeModelRequest(model: string, task: Task, apiKey: string, stream: boolean, body: string, requestOptions?: SingleRequestOptions, fetchFn?: typeof fetch): Promise<Response>;
|
||||
export declare function makeRequest(url: string, fetchOptions: RequestInit, fetchFn?: typeof fetch): Promise<Response>;
|
||||
31
node_modules/@google/generative-ai/dist/src/requests/response-helpers.d.ts
generated
vendored
Normal file
31
node_modules/@google/generative-ai/dist/src/requests/response-helpers.d.ts
generated
vendored
Normal file
@ -0,0 +1,31 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { EnhancedGenerateContentResponse, FunctionCall, GenerateContentResponse } from "../../types";
|
||||
/**
|
||||
* Adds convenience helper methods to a response object, including stream
|
||||
* chunks (as long as each chunk is a complete GenerateContentResponse JSON).
|
||||
*/
|
||||
export declare function addHelpers(response: GenerateContentResponse): EnhancedGenerateContentResponse;
|
||||
/**
|
||||
* Returns all text found in all parts of first candidate.
|
||||
*/
|
||||
export declare function getText(response: GenerateContentResponse): string;
|
||||
/**
|
||||
* Returns functionCall of first candidate.
|
||||
*/
|
||||
export declare function getFunctionCalls(response: GenerateContentResponse): FunctionCall[];
|
||||
export declare function formatBlockErrorMessage(response: GenerateContentResponse): string;
|
||||
37
node_modules/@google/generative-ai/dist/src/requests/stream-reader.d.ts
generated
vendored
Normal file
37
node_modules/@google/generative-ai/dist/src/requests/stream-reader.d.ts
generated
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { GenerateContentResponse, GenerateContentStreamResult } from "../../types";
|
||||
/**
|
||||
* Process a response.body stream from the backend and return an
|
||||
* iterator that provides one complete GenerateContentResponse at a time
|
||||
* and a promise that resolves with a single aggregated
|
||||
* GenerateContentResponse.
|
||||
*
|
||||
* @param response - Response from a fetch call
|
||||
*/
|
||||
export declare function processStream(response: Response): GenerateContentStreamResult;
|
||||
/**
|
||||
* Reads a raw stream from the fetch response and join incomplete
|
||||
* chunks, returning a new stream that provides a single complete
|
||||
* GenerateContentResponse in each iteration.
|
||||
*/
|
||||
export declare function getResponseStream<T>(inputStream: ReadableStream<string>): ReadableStream<T>;
|
||||
/**
|
||||
* Aggregates an array of `GenerateContentResponse`s into a single
|
||||
* GenerateContentResponse.
|
||||
*/
|
||||
export declare function aggregateResponses(responses: GenerateContentResponse[]): GenerateContentResponse;
|
||||
47
node_modules/@google/generative-ai/dist/src/server/cache-manager.d.ts
generated
vendored
Normal file
47
node_modules/@google/generative-ai/dist/src/server/cache-manager.d.ts
generated
vendored
Normal file
@ -0,0 +1,47 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { CachedContent, RequestOptions } from "../../types";
|
||||
import { CachedContentCreateParams, CachedContentUpdateParams, ListCacheResponse, ListParams } from "../../types/server";
|
||||
/**
|
||||
* Class for managing GoogleAI content caches.
|
||||
* @public
|
||||
*/
|
||||
export declare class GoogleAICacheManager {
|
||||
apiKey: string;
|
||||
private _requestOptions?;
|
||||
constructor(apiKey: string, _requestOptions?: RequestOptions);
|
||||
/**
|
||||
* Upload a new content cache
|
||||
*/
|
||||
create(createOptions: CachedContentCreateParams): Promise<CachedContent>;
|
||||
/**
|
||||
* List all uploaded content caches
|
||||
*/
|
||||
list(listParams?: ListParams): Promise<ListCacheResponse>;
|
||||
/**
|
||||
* Get a content cache
|
||||
*/
|
||||
get(name: string): Promise<CachedContent>;
|
||||
/**
|
||||
* Update an existing content cache
|
||||
*/
|
||||
update(name: string, updateParams: CachedContentUpdateParams): Promise<CachedContent>;
|
||||
/**
|
||||
* Delete content cache with given name
|
||||
*/
|
||||
delete(name: string): Promise<void>;
|
||||
}
|
||||
24
node_modules/@google/generative-ai/dist/src/server/constants.d.ts
generated
vendored
Normal file
24
node_modules/@google/generative-ai/dist/src/server/constants.d.ts
generated
vendored
Normal file
@ -0,0 +1,24 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export declare enum RpcTask {
|
||||
UPLOAD = "upload",
|
||||
LIST = "list",
|
||||
GET = "get",
|
||||
DELETE = "delete",
|
||||
UPDATE = "update",
|
||||
CREATE = "create"
|
||||
}
|
||||
56
node_modules/@google/generative-ai/dist/src/server/file-manager.d.ts
generated
vendored
Normal file
56
node_modules/@google/generative-ai/dist/src/server/file-manager.d.ts
generated
vendored
Normal file
@ -0,0 +1,56 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { RequestOptions, SingleRequestOptions } from "../../types";
|
||||
import { FileMetadata, FileMetadataResponse, ListFilesResponse, ListParams, UploadFileResponse } from "../../types/server";
|
||||
export interface UploadMetadata {
|
||||
name?: string;
|
||||
["display_name"]?: string;
|
||||
}
|
||||
/**
|
||||
* Class for managing GoogleAI file uploads.
|
||||
* @public
|
||||
*/
|
||||
export declare class GoogleAIFileManager {
|
||||
apiKey: string;
|
||||
private _requestOptions;
|
||||
constructor(apiKey: string, _requestOptions?: RequestOptions);
|
||||
/**
|
||||
* Upload a file.
|
||||
*/
|
||||
uploadFile(filePath: string, fileMetadata: FileMetadata): Promise<UploadFileResponse>;
|
||||
/**
|
||||
* List all uploaded files.
|
||||
*
|
||||
* Any fields set in the optional {@link SingleRequestOptions} parameter will take
|
||||
* precedence over the {@link RequestOptions} values provided at the time of the
|
||||
* {@link GoogleAIFileManager} initialization.
|
||||
*/
|
||||
listFiles(listParams?: ListParams, requestOptions?: SingleRequestOptions): Promise<ListFilesResponse>;
|
||||
/**
|
||||
* Get metadata for file with given ID.
|
||||
*
|
||||
* Any fields set in the optional {@link SingleRequestOptions} parameter will take
|
||||
* precedence over the {@link RequestOptions} values provided at the time of the
|
||||
* {@link GoogleAIFileManager} initialization.
|
||||
*/
|
||||
getFile(fileId: string, requestOptions?: SingleRequestOptions): Promise<FileMetadataResponse>;
|
||||
/**
|
||||
* Delete file with given ID.
|
||||
*/
|
||||
deleteFile(fileId: string): Promise<void>;
|
||||
}
|
||||
export declare function getUploadMetadata(inputMetadata: FileMetadata): FileMetadata;
|
||||
19
node_modules/@google/generative-ai/dist/src/server/index.d.ts
generated
vendored
Normal file
19
node_modules/@google/generative-ai/dist/src/server/index.d.ts
generated
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export { GoogleAIFileManager } from "./file-manager";
|
||||
export { GoogleAICacheManager } from "./cache-manager";
|
||||
export * from "../../types/server";
|
||||
42
node_modules/@google/generative-ai/dist/src/server/request.d.ts
generated
vendored
Normal file
42
node_modules/@google/generative-ai/dist/src/server/request.d.ts
generated
vendored
Normal file
@ -0,0 +1,42 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { RequestOptions, SingleRequestOptions } from "../../types";
|
||||
import { RpcTask } from "./constants";
|
||||
export declare class ServerRequestUrl {
|
||||
task: RpcTask;
|
||||
apiKey: string;
|
||||
requestOptions?: SingleRequestOptions;
|
||||
protected _url: URL;
|
||||
constructor(task: RpcTask, apiKey: string, requestOptions?: SingleRequestOptions);
|
||||
appendPath(path: string): void;
|
||||
appendParam(key: string, value: string): void;
|
||||
toString(): string;
|
||||
}
|
||||
export declare class CachedContentUrl extends ServerRequestUrl {
|
||||
task: RpcTask;
|
||||
apiKey: string;
|
||||
requestOptions?: RequestOptions;
|
||||
constructor(task: RpcTask, apiKey: string, requestOptions?: RequestOptions);
|
||||
}
|
||||
export declare class FilesRequestUrl extends ServerRequestUrl {
|
||||
task: RpcTask;
|
||||
apiKey: string;
|
||||
requestOptions?: RequestOptions;
|
||||
constructor(task: RpcTask, apiKey: string, requestOptions?: RequestOptions);
|
||||
}
|
||||
export declare function getHeaders(url: ServerRequestUrl): Headers;
|
||||
export declare function makeServerRequest(url: FilesRequestUrl, headers: Headers, body?: Blob | string, fetchFn?: typeof fetch): Promise<Response>;
|
||||
11
node_modules/@google/generative-ai/dist/tsdoc-metadata.json
generated
vendored
Normal file
11
node_modules/@google/generative-ai/dist/tsdoc-metadata.json
generated
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
// This file is read by tools that parse documentation comments conforming to the TSDoc standard.
|
||||
// It should be published with your NPM package. It should not be tracked by Git.
|
||||
{
|
||||
"tsdocVersion": "0.12",
|
||||
"toolPackages": [
|
||||
{
|
||||
"packageName": "@microsoft/api-extractor",
|
||||
"packageVersion": "7.38.2"
|
||||
}
|
||||
]
|
||||
}
|
||||
230
node_modules/@google/generative-ai/dist/types/content.d.ts
generated
vendored
Normal file
230
node_modules/@google/generative-ai/dist/types/content.d.ts
generated
vendored
Normal file
@ -0,0 +1,230 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export * from "./function-calling";
|
||||
/**
|
||||
* Content type for both prompts and response candidates.
|
||||
* @public
|
||||
*/
|
||||
export interface Content {
|
||||
role: string;
|
||||
parts: Part[];
|
||||
}
|
||||
/**
|
||||
* Content part - includes text or image part types.
|
||||
* @public
|
||||
*/
|
||||
export type Part = TextPart | InlineDataPart | FunctionCallPart | FunctionResponsePart | FileDataPart | ExecutableCodePart | CodeExecutionResultPart;
|
||||
/**
|
||||
* Content part interface if the part represents a text string.
|
||||
* @public
|
||||
*/
|
||||
export interface TextPart {
|
||||
text: string;
|
||||
inlineData?: never;
|
||||
functionCall?: never;
|
||||
functionResponse?: never;
|
||||
fileData?: never;
|
||||
executableCode?: never;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
/**
|
||||
* Content part interface if the part represents an image.
|
||||
* @public
|
||||
*/
|
||||
export interface InlineDataPart {
|
||||
text?: never;
|
||||
inlineData: GenerativeContentBlob;
|
||||
functionCall?: never;
|
||||
functionResponse?: never;
|
||||
fileData?: never;
|
||||
executableCode?: never;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
/**
|
||||
* Content part interface if the part represents a FunctionCall.
|
||||
* @public
|
||||
*/
|
||||
export interface FunctionCallPart {
|
||||
text?: never;
|
||||
inlineData?: never;
|
||||
functionCall: FunctionCall;
|
||||
functionResponse?: never;
|
||||
fileData?: never;
|
||||
executableCode?: never;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
/**
|
||||
* Content part interface if the part represents FunctionResponse.
|
||||
* @public
|
||||
*/
|
||||
export interface FunctionResponsePart {
|
||||
text?: never;
|
||||
inlineData?: never;
|
||||
functionCall?: never;
|
||||
functionResponse: FunctionResponse;
|
||||
fileData?: never;
|
||||
executableCode?: never;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
/**
|
||||
* Content part interface if the part represents FileData.
|
||||
* @public
|
||||
*/
|
||||
export interface FileDataPart {
|
||||
text?: never;
|
||||
inlineData?: never;
|
||||
functionCall?: never;
|
||||
functionResponse?: never;
|
||||
fileData: FileData;
|
||||
executableCode?: never;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
/**
|
||||
* Content part containing executable code generated by the model.
|
||||
* @public
|
||||
*/
|
||||
export interface ExecutableCodePart {
|
||||
text?: never;
|
||||
inlineData?: never;
|
||||
functionCall?: never;
|
||||
functionResponse?: never;
|
||||
fileData?: never;
|
||||
executableCode: ExecutableCode;
|
||||
codeExecutionResult?: never;
|
||||
}
|
||||
/**
|
||||
* Content part containing the result of executed code.
|
||||
* @public
|
||||
*/
|
||||
export interface CodeExecutionResultPart {
|
||||
text?: never;
|
||||
inlineData?: never;
|
||||
functionCall?: never;
|
||||
functionResponse?: never;
|
||||
fileData?: never;
|
||||
executableCode?: never;
|
||||
codeExecutionResult: CodeExecutionResult;
|
||||
}
|
||||
/**
|
||||
* A predicted [FunctionCall] returned from the model
|
||||
* that contains a string representing the [FunctionDeclaration.name]
|
||||
* and a structured JSON object containing the parameters and their values.
|
||||
* @public
|
||||
*/
|
||||
export interface FunctionCall {
|
||||
name: string;
|
||||
args: object;
|
||||
}
|
||||
/**
|
||||
* The result output from a [FunctionCall] that contains a string
|
||||
* representing the [FunctionDeclaration.name]
|
||||
* and a structured JSON object containing any output
|
||||
* from the function is used as context to the model.
|
||||
* This should contain the result of a [FunctionCall]
|
||||
* made based on model prediction.
|
||||
* @public
|
||||
*/
|
||||
export interface FunctionResponse {
|
||||
name: string;
|
||||
response: object;
|
||||
}
|
||||
/**
|
||||
* Interface for sending an image.
|
||||
* @public
|
||||
*/
|
||||
export interface GenerativeContentBlob {
|
||||
mimeType: string;
|
||||
/**
|
||||
* Image as a base64 string.
|
||||
*/
|
||||
data: string;
|
||||
}
|
||||
/**
|
||||
* Data pointing to a file uploaded with the Files API.
|
||||
* @public
|
||||
*/
|
||||
export interface FileData {
|
||||
mimeType: string;
|
||||
fileUri: string;
|
||||
}
|
||||
/**
|
||||
* Code generated by the model that is meant to be executed, where the result
|
||||
* is returned to the model.
|
||||
* Only generated when using the code execution tool, in which the code will
|
||||
* be automatically executed, and a corresponding `CodeExecutionResult` will
|
||||
* also be generated.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export interface ExecutableCode {
|
||||
/**
|
||||
* Programming language of the `code`.
|
||||
*/
|
||||
language: ExecutableCodeLanguage;
|
||||
/**
|
||||
* The code to be executed.
|
||||
*/
|
||||
code: string;
|
||||
}
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export declare enum ExecutableCodeLanguage {
|
||||
LANGUAGE_UNSPECIFIED = "language_unspecified",
|
||||
PYTHON = "python"
|
||||
}
|
||||
/**
|
||||
* Result of executing the `ExecutableCode`.
|
||||
* Only generated when using code execution, and always follows a `Part`
|
||||
* containing the `ExecutableCode`.
|
||||
* @public
|
||||
*/
|
||||
export interface CodeExecutionResult {
|
||||
/**
|
||||
* Outcome of the code execution.
|
||||
*/
|
||||
outcome: Outcome;
|
||||
/**
|
||||
* Contains stdout when code execution is successful, stderr or other
|
||||
* description otherwise.
|
||||
*/
|
||||
output: string;
|
||||
}
|
||||
/**
|
||||
* Possible outcomes of code execution.
|
||||
* @public
|
||||
*/
|
||||
export declare enum Outcome {
|
||||
/**
|
||||
* Unspecified status. This value should not be used.
|
||||
*/
|
||||
OUTCOME_UNSPECIFIED = "outcome_unspecified",
|
||||
/**
|
||||
* Code execution completed successfully.
|
||||
*/
|
||||
OUTCOME_OK = "outcome_ok",
|
||||
/**
|
||||
* Code execution finished but with a failure. `stderr` should contain the
|
||||
* reason.
|
||||
*/
|
||||
OUTCOME_FAILED = "outcome_failed",
|
||||
/**
|
||||
* Code execution ran for too long, and was cancelled. There may or may not
|
||||
* be a partial output present.
|
||||
*/
|
||||
OUTCOME_DEADLINE_EXCEEDED = "outcome_deadline_exceeded"
|
||||
}
|
||||
105
node_modules/@google/generative-ai/dist/types/enums.d.ts
generated
vendored
Normal file
105
node_modules/@google/generative-ai/dist/types/enums.d.ts
generated
vendored
Normal file
@ -0,0 +1,105 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* Possible roles.
|
||||
* @public
|
||||
*/
|
||||
export declare const POSSIBLE_ROLES: readonly ["user", "model", "function", "system"];
|
||||
/**
|
||||
* Harm categories that would cause prompts or candidates to be blocked.
|
||||
* @public
|
||||
*/
|
||||
export declare enum HarmCategory {
|
||||
HARM_CATEGORY_UNSPECIFIED = "HARM_CATEGORY_UNSPECIFIED",
|
||||
HARM_CATEGORY_HATE_SPEECH = "HARM_CATEGORY_HATE_SPEECH",
|
||||
HARM_CATEGORY_SEXUALLY_EXPLICIT = "HARM_CATEGORY_SEXUALLY_EXPLICIT",
|
||||
HARM_CATEGORY_HARASSMENT = "HARM_CATEGORY_HARASSMENT",
|
||||
HARM_CATEGORY_DANGEROUS_CONTENT = "HARM_CATEGORY_DANGEROUS_CONTENT"
|
||||
}
|
||||
/**
|
||||
* Threshold above which a prompt or candidate will be blocked.
|
||||
* @public
|
||||
*/
|
||||
export declare enum HarmBlockThreshold {
|
||||
HARM_BLOCK_THRESHOLD_UNSPECIFIED = "HARM_BLOCK_THRESHOLD_UNSPECIFIED",
|
||||
BLOCK_LOW_AND_ABOVE = "BLOCK_LOW_AND_ABOVE",
|
||||
BLOCK_MEDIUM_AND_ABOVE = "BLOCK_MEDIUM_AND_ABOVE",
|
||||
BLOCK_ONLY_HIGH = "BLOCK_ONLY_HIGH",
|
||||
BLOCK_NONE = "BLOCK_NONE"
|
||||
}
|
||||
/**
|
||||
* Probability that a prompt or candidate matches a harm category.
|
||||
* @public
|
||||
*/
|
||||
export declare enum HarmProbability {
|
||||
HARM_PROBABILITY_UNSPECIFIED = "HARM_PROBABILITY_UNSPECIFIED",
|
||||
NEGLIGIBLE = "NEGLIGIBLE",
|
||||
LOW = "LOW",
|
||||
MEDIUM = "MEDIUM",
|
||||
HIGH = "HIGH"
|
||||
}
|
||||
/**
|
||||
* Reason that a prompt was blocked.
|
||||
* @public
|
||||
*/
|
||||
export declare enum BlockReason {
|
||||
BLOCKED_REASON_UNSPECIFIED = "BLOCKED_REASON_UNSPECIFIED",
|
||||
SAFETY = "SAFETY",
|
||||
OTHER = "OTHER"
|
||||
}
|
||||
/**
|
||||
* Reason that a candidate finished.
|
||||
* @public
|
||||
*/
|
||||
export declare enum FinishReason {
|
||||
FINISH_REASON_UNSPECIFIED = "FINISH_REASON_UNSPECIFIED",
|
||||
STOP = "STOP",
|
||||
MAX_TOKENS = "MAX_TOKENS",
|
||||
SAFETY = "SAFETY",
|
||||
RECITATION = "RECITATION",
|
||||
LANGUAGE = "LANGUAGE",
|
||||
OTHER = "OTHER"
|
||||
}
|
||||
/**
|
||||
* Task type for embedding content.
|
||||
* @public
|
||||
*/
|
||||
export declare enum TaskType {
|
||||
TASK_TYPE_UNSPECIFIED = "TASK_TYPE_UNSPECIFIED",
|
||||
RETRIEVAL_QUERY = "RETRIEVAL_QUERY",
|
||||
RETRIEVAL_DOCUMENT = "RETRIEVAL_DOCUMENT",
|
||||
SEMANTIC_SIMILARITY = "SEMANTIC_SIMILARITY",
|
||||
CLASSIFICATION = "CLASSIFICATION",
|
||||
CLUSTERING = "CLUSTERING"
|
||||
}
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export declare enum FunctionCallingMode {
|
||||
MODE_UNSPECIFIED = "MODE_UNSPECIFIED",
|
||||
AUTO = "AUTO",
|
||||
ANY = "ANY",
|
||||
NONE = "NONE"
|
||||
}
|
||||
/**
|
||||
* The mode of the predictor to be used in dynamic retrieval.
|
||||
* @public
|
||||
*/
|
||||
export declare enum DynamicRetrievalMode {
|
||||
MODE_UNSPECIFIED = "MODE_UNSPECIFIED",
|
||||
MODE_DYNAMIC = "MODE_DYNAMIC"
|
||||
}
|
||||
170
node_modules/@google/generative-ai/dist/types/function-calling.d.ts
generated
vendored
Normal file
170
node_modules/@google/generative-ai/dist/types/function-calling.d.ts
generated
vendored
Normal file
@ -0,0 +1,170 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { FunctionCallingMode } from "./enums";
|
||||
/**
|
||||
* Structured representation of a function declaration as defined by the
|
||||
* [OpenAPI 3.0 specification](https://spec.openapis.org/oas/v3.0.3). Included
|
||||
* in this declaration are the function name and parameters. This
|
||||
* FunctionDeclaration is a representation of a block of code that can be used
|
||||
* as a Tool by the model and executed by the client.
|
||||
* @public
|
||||
*/
|
||||
export declare interface FunctionDeclaration {
|
||||
/**
|
||||
* The name of the function to call. Must start with a letter or an
|
||||
* underscore. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with
|
||||
* a max length of 64.
|
||||
*/
|
||||
name: string;
|
||||
/**
|
||||
* Optional. Description and purpose of the function. Model uses it to decide
|
||||
* how and whether to call the function.
|
||||
*/
|
||||
description?: string;
|
||||
/**
|
||||
* Optional. Describes the parameters to this function in JSON Schema Object
|
||||
* format. Reflects the Open API 3.03 Parameter Object. string Key: the name
|
||||
* of the parameter. Parameter names are case sensitive. Schema Value: the
|
||||
* Schema defining the type used for the parameter. For function with no
|
||||
* parameters, this can be left unset.
|
||||
*
|
||||
* @example with 1 required and 1 optional parameter: type: OBJECT properties:
|
||||
* ```
|
||||
* param1:
|
||||
*
|
||||
* type: STRING
|
||||
* param2:
|
||||
*
|
||||
* type: INTEGER
|
||||
* required:
|
||||
*
|
||||
* - param1
|
||||
* ```
|
||||
*/
|
||||
parameters?: FunctionDeclarationSchema;
|
||||
}
|
||||
/**
|
||||
* A FunctionDeclarationsTool is a piece of code that enables the system to
|
||||
* interact with external systems to perform an action, or set of actions,
|
||||
* outside of knowledge and scope of the model.
|
||||
* @public
|
||||
*/
|
||||
export declare interface FunctionDeclarationsTool {
|
||||
/**
|
||||
* Optional. One or more function declarations
|
||||
* to be passed to the model along with the current user query. Model may
|
||||
* decide to call a subset of these functions by populating
|
||||
* [FunctionCall][content.part.functionCall] in the response. User should
|
||||
* provide a [FunctionResponse][content.part.functionResponse] for each
|
||||
* function call in the next turn. Based on the function responses, Model will
|
||||
* generate the final response back to the user. Maximum 64 function
|
||||
* declarations can be provided.
|
||||
*/
|
||||
functionDeclarations?: FunctionDeclaration[];
|
||||
}
|
||||
/**
|
||||
* Contains the list of OpenAPI data types
|
||||
* as defined by https://swagger.io/docs/specification/data-models/data-types/
|
||||
* @public
|
||||
*/
|
||||
export declare enum SchemaType {
|
||||
/** String type. */
|
||||
STRING = "string",
|
||||
/** Number type. */
|
||||
NUMBER = "number",
|
||||
/** Integer type. */
|
||||
INTEGER = "integer",
|
||||
/** Boolean type. */
|
||||
BOOLEAN = "boolean",
|
||||
/** Array type. */
|
||||
ARRAY = "array",
|
||||
/** Object type. */
|
||||
OBJECT = "object"
|
||||
}
|
||||
/**
|
||||
* Schema is used to define the format of input/output data.
|
||||
* Represents a select subset of an OpenAPI 3.0 schema object.
|
||||
* More fields may be added in the future as needed.
|
||||
* @public
|
||||
*/
|
||||
export interface Schema {
|
||||
/**
|
||||
* Optional. The type of the property. {@link
|
||||
* SchemaType}.
|
||||
*/
|
||||
type?: SchemaType;
|
||||
/** Optional. The format of the property. */
|
||||
format?: string;
|
||||
/** Optional. The description of the property. */
|
||||
description?: string;
|
||||
/** Optional. Whether the property is nullable. */
|
||||
nullable?: boolean;
|
||||
/** Optional. The items of the property. */
|
||||
items?: Schema;
|
||||
/** Optional. The enum of the property. */
|
||||
enum?: string[];
|
||||
/** Optional. Map of {@link Schema}. */
|
||||
properties?: {
|
||||
[k: string]: Schema;
|
||||
};
|
||||
/** Optional. Array of required property. */
|
||||
required?: string[];
|
||||
/** Optional. The example of the property. */
|
||||
example?: unknown;
|
||||
}
|
||||
/**
|
||||
* Schema for parameters passed to {@link FunctionDeclaration.parameters}.
|
||||
* @public
|
||||
*/
|
||||
export interface FunctionDeclarationSchema {
|
||||
/** The type of the parameter. */
|
||||
type: SchemaType;
|
||||
/** The format of the parameter. */
|
||||
properties: {
|
||||
[k: string]: FunctionDeclarationSchemaProperty;
|
||||
};
|
||||
/** Optional. Description of the parameter. */
|
||||
description?: string;
|
||||
/** Optional. Array of required parameters. */
|
||||
required?: string[];
|
||||
}
|
||||
/**
|
||||
* Schema for top-level function declaration
|
||||
* @public
|
||||
*/
|
||||
export interface FunctionDeclarationSchemaProperty extends Schema {
|
||||
}
|
||||
/**
|
||||
* Schema passed to `GenerationConfig.responseSchema`
|
||||
* @public
|
||||
*/
|
||||
export interface ResponseSchema extends Schema {
|
||||
}
|
||||
/**
|
||||
* Tool config. This config is shared for all tools provided in the request.
|
||||
* @public
|
||||
*/
|
||||
export interface ToolConfig {
|
||||
functionCallingConfig: FunctionCallingConfig;
|
||||
}
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export interface FunctionCallingConfig {
|
||||
mode?: FunctionCallingMode;
|
||||
allowedFunctionNames?: string[];
|
||||
}
|
||||
22
node_modules/@google/generative-ai/dist/types/index.d.ts
generated
vendored
Normal file
22
node_modules/@google/generative-ai/dist/types/index.d.ts
generated
vendored
Normal file
@ -0,0 +1,22 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export * from "./content";
|
||||
export * from "./enums";
|
||||
export * from "./requests";
|
||||
export * from "./responses";
|
||||
export * from "./search-grounding";
|
||||
export { CachedContent, CachedContentBase } from "./server/caching";
|
||||
223
node_modules/@google/generative-ai/dist/types/requests.d.ts
generated
vendored
Normal file
223
node_modules/@google/generative-ai/dist/types/requests.d.ts
generated
vendored
Normal file
@ -0,0 +1,223 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { CachedContent } from "./server/caching";
|
||||
import { Content, Part } from "./content";
|
||||
import { HarmBlockThreshold, HarmCategory, TaskType } from "./enums";
|
||||
import { FunctionDeclarationsTool, ResponseSchema, ToolConfig } from "./function-calling";
|
||||
import { GoogleSearchRetrievalTool } from "./search-grounding";
|
||||
/**
|
||||
* Base parameters for a number of methods.
|
||||
* @public
|
||||
*/
|
||||
export interface BaseParams {
|
||||
safetySettings?: SafetySetting[];
|
||||
generationConfig?: GenerationConfig;
|
||||
}
|
||||
/**
|
||||
* Params passed to {@link GoogleGenerativeAI.getGenerativeModel}.
|
||||
* @public
|
||||
*/
|
||||
export interface ModelParams extends BaseParams {
|
||||
model: string;
|
||||
tools?: Tool[];
|
||||
toolConfig?: ToolConfig;
|
||||
systemInstruction?: string | Part | Content;
|
||||
cachedContent?: CachedContent;
|
||||
}
|
||||
/**
|
||||
* Request sent to `generateContent` endpoint.
|
||||
* @public
|
||||
*/
|
||||
export interface GenerateContentRequest extends BaseParams {
|
||||
contents: Content[];
|
||||
tools?: Tool[];
|
||||
toolConfig?: ToolConfig;
|
||||
systemInstruction?: string | Part | Content;
|
||||
/**
|
||||
* This is the name of a `CachedContent` and not the cache object itself.
|
||||
*/
|
||||
cachedContent?: string;
|
||||
}
|
||||
/**
|
||||
* Request sent to `generateContent` endpoint.
|
||||
* @internal
|
||||
*/
|
||||
export interface _GenerateContentRequestInternal extends GenerateContentRequest {
|
||||
model?: string;
|
||||
}
|
||||
/**
|
||||
* Safety setting that can be sent as part of request parameters.
|
||||
* @public
|
||||
*/
|
||||
export interface SafetySetting {
|
||||
category: HarmCategory;
|
||||
threshold: HarmBlockThreshold;
|
||||
}
|
||||
/**
|
||||
* Config options for content-related requests
|
||||
* @public
|
||||
*/
|
||||
export interface GenerationConfig {
|
||||
candidateCount?: number;
|
||||
stopSequences?: string[];
|
||||
maxOutputTokens?: number;
|
||||
temperature?: number;
|
||||
topP?: number;
|
||||
topK?: number;
|
||||
/**
|
||||
* Output response mimetype of the generated candidate text.
|
||||
* Supported mimetype:
|
||||
* `text/plain`: (default) Text output.
|
||||
* `application/json`: JSON response in the candidates.
|
||||
*/
|
||||
responseMimeType?: string;
|
||||
/**
|
||||
* Output response schema of the generated candidate text.
|
||||
* Note: This only applies when the specified `responseMIMEType` supports a schema; currently
|
||||
* this is limited to `application/json`.
|
||||
*/
|
||||
responseSchema?: ResponseSchema;
|
||||
/**
|
||||
* Presence penalty applied to the next token's logprobs if the token has
|
||||
* already been seen in the response.
|
||||
*/
|
||||
presencePenalty?: number;
|
||||
/**
|
||||
* Frequency penalty applied to the next token's logprobs, multiplied by the
|
||||
* number of times each token has been seen in the respponse so far.
|
||||
*/
|
||||
frequencyPenalty?: number;
|
||||
/**
|
||||
* If True, export the logprobs results in response.
|
||||
*/
|
||||
responseLogprobs?: boolean;
|
||||
/**
|
||||
* Valid if responseLogProbs is set to True. This will set the number of top
|
||||
* logprobs to return at each decoding step in the logprobsResult.
|
||||
*/
|
||||
logprobs?: number;
|
||||
}
|
||||
/**
|
||||
* Params for {@link GenerativeModel.startChat}.
|
||||
* @public
|
||||
*/
|
||||
export interface StartChatParams extends BaseParams {
|
||||
history?: Content[];
|
||||
tools?: Tool[];
|
||||
toolConfig?: ToolConfig;
|
||||
systemInstruction?: string | Part | Content;
|
||||
/**
|
||||
* This is the name of a `CachedContent` and not the cache object itself.
|
||||
*/
|
||||
cachedContent?: string;
|
||||
}
|
||||
/**
|
||||
* Params for calling {@link GenerativeModel.countTokens}.
|
||||
*
|
||||
* The request must contain either a {@link Content} array or a
|
||||
* {@link GenerateContentRequest}, but not both. If both are provided
|
||||
* then a {@link GoogleGenerativeAIRequestInputError} is thrown.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export interface CountTokensRequest {
|
||||
generateContentRequest?: GenerateContentRequest;
|
||||
contents?: Content[];
|
||||
}
|
||||
/**
|
||||
* Params for calling {@link GenerativeModel.countTokens}
|
||||
* @internal
|
||||
*/
|
||||
export interface _CountTokensRequestInternal {
|
||||
generateContentRequest?: _GenerateContentRequestInternal;
|
||||
contents?: Content[];
|
||||
}
|
||||
/**
|
||||
* Params for calling {@link GenerativeModel.embedContent}
|
||||
* @public
|
||||
*/
|
||||
export interface EmbedContentRequest {
|
||||
content: Content;
|
||||
taskType?: TaskType;
|
||||
title?: string;
|
||||
}
|
||||
/**
|
||||
* Params for calling {@link GenerativeModel.batchEmbedContents}
|
||||
* @public
|
||||
*/
|
||||
export interface BatchEmbedContentsRequest {
|
||||
requests: EmbedContentRequest[];
|
||||
}
|
||||
/**
|
||||
* Params passed to getGenerativeModel() or GoogleAIFileManager().
|
||||
* @public
|
||||
*/
|
||||
export interface RequestOptions {
|
||||
/**
|
||||
* Request timeout in milliseconds.
|
||||
*/
|
||||
timeout?: number;
|
||||
/**
|
||||
* Version of API endpoint to call (e.g. "v1" or "v1beta"). If not specified,
|
||||
* defaults to latest stable version.
|
||||
*/
|
||||
apiVersion?: string;
|
||||
/**
|
||||
* Additional attribution information to include in the x-goog-api-client header.
|
||||
* Used by wrapper SDKs.
|
||||
*/
|
||||
apiClient?: string;
|
||||
/**
|
||||
* Base endpoint url. Defaults to "https://generativelanguage.googleapis.com"
|
||||
*/
|
||||
baseUrl?: string;
|
||||
/**
|
||||
* Custom HTTP request headers.
|
||||
*/
|
||||
customHeaders?: Headers | Record<string, string>;
|
||||
}
|
||||
/**
|
||||
* Params passed to atomic asynchronous operations.
|
||||
* @public
|
||||
*/
|
||||
export interface SingleRequestOptions extends RequestOptions {
|
||||
/**
|
||||
* An object that may be used to abort asynchronous requests. The request may
|
||||
* also be aborted due to the expiration of the timeout value, if provided.
|
||||
*
|
||||
* NOTE: AbortSignal is a client-only operation. Using it to cancel an
|
||||
* operation will not cancel the request in the service. You will still
|
||||
* be charged usage for any applicable operations.
|
||||
*/
|
||||
signal?: AbortSignal;
|
||||
}
|
||||
/**
|
||||
* Defines a tool that model can call to access external knowledge.
|
||||
* @public
|
||||
*/
|
||||
export declare type Tool = FunctionDeclarationsTool | CodeExecutionTool | GoogleSearchRetrievalTool;
|
||||
/**
|
||||
* Enables the model to execute code as part of generation.
|
||||
* @public
|
||||
*/
|
||||
export interface CodeExecutionTool {
|
||||
/**
|
||||
* Provide an empty object to enable code execution. This field may have
|
||||
* subfields added in the future.
|
||||
*/
|
||||
codeExecution: {};
|
||||
}
|
||||
216
node_modules/@google/generative-ai/dist/types/responses.d.ts
generated
vendored
Normal file
216
node_modules/@google/generative-ai/dist/types/responses.d.ts
generated
vendored
Normal file
@ -0,0 +1,216 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { Content, FunctionCall } from "./content";
|
||||
import { BlockReason, FinishReason, HarmCategory, HarmProbability } from "./enums";
|
||||
import { GroundingMetadata } from "./search-grounding";
|
||||
/**
|
||||
* Result object returned from generateContent() call.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export interface GenerateContentResult {
|
||||
response: EnhancedGenerateContentResponse;
|
||||
}
|
||||
/**
|
||||
* Result object returned from generateContentStream() call.
|
||||
* Iterate over `stream` to get chunks as they come in and/or
|
||||
* use the `response` promise to get the aggregated response when
|
||||
* the stream is done.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export interface GenerateContentStreamResult {
|
||||
stream: AsyncGenerator<EnhancedGenerateContentResponse>;
|
||||
response: Promise<EnhancedGenerateContentResponse>;
|
||||
}
|
||||
/**
|
||||
* Response object wrapped with helper methods.
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export interface EnhancedGenerateContentResponse extends GenerateContentResponse {
|
||||
/**
|
||||
* Returns the text string assembled from all `Part`s of the first candidate
|
||||
* of the response, if available.
|
||||
* Throws if the prompt or candidate was blocked.
|
||||
*/
|
||||
text: () => string;
|
||||
/**
|
||||
* Deprecated: use `functionCalls()` instead.
|
||||
* @deprecated - use `functionCalls()` instead
|
||||
*/
|
||||
functionCall: () => FunctionCall | undefined;
|
||||
/**
|
||||
* Returns function calls found in any `Part`s of the first candidate
|
||||
* of the response, if available.
|
||||
* Throws if the prompt or candidate was blocked.
|
||||
*/
|
||||
functionCalls: () => FunctionCall[] | undefined;
|
||||
}
|
||||
/**
|
||||
* Individual response from {@link GenerativeModel.generateContent} and
|
||||
* {@link GenerativeModel.generateContentStream}.
|
||||
* `generateContentStream()` will return one in each chunk until
|
||||
* the stream is done.
|
||||
* @public
|
||||
*/
|
||||
export interface GenerateContentResponse {
|
||||
/** Candidate responses from the model. */
|
||||
candidates?: GenerateContentCandidate[];
|
||||
/** The prompt's feedback related to the content filters. */
|
||||
promptFeedback?: PromptFeedback;
|
||||
/** Metadata on the generation request's token usage. */
|
||||
usageMetadata?: UsageMetadata;
|
||||
}
|
||||
/**
|
||||
* Logprobs Result
|
||||
* @public
|
||||
*/
|
||||
export interface LogprobsResult {
|
||||
/** Length = total number of decoding steps. */
|
||||
topCandidates: TopCandidates[];
|
||||
/**
|
||||
* Length = total number of decoding steps.
|
||||
* The chosen candidates may or may not be in topCandidates.
|
||||
*/
|
||||
chosenCandidates: LogprobsCandidate[];
|
||||
}
|
||||
/**
|
||||
* Candidate for the logprobs token and score.
|
||||
* @public
|
||||
*/
|
||||
export interface LogprobsCandidate {
|
||||
/** The candidate's token string value. */
|
||||
token: string;
|
||||
/** The candidate's token id value. */
|
||||
tokenID: number;
|
||||
/** The candidate's log probability. */
|
||||
logProbability: number;
|
||||
}
|
||||
/**
|
||||
* Candidates with top log probabilities at each decoding step
|
||||
*/
|
||||
export interface TopCandidates {
|
||||
/** Sorted by log probability in descending order. */
|
||||
candidates: LogprobsCandidate[];
|
||||
}
|
||||
/**
|
||||
* Metadata on the generation request's token usage.
|
||||
* @public
|
||||
*/
|
||||
export interface UsageMetadata {
|
||||
/** Number of tokens in the prompt. */
|
||||
promptTokenCount: number;
|
||||
/** Total number of tokens across the generated candidates. */
|
||||
candidatesTokenCount: number;
|
||||
/** Total token count for the generation request (prompt + candidates). */
|
||||
totalTokenCount: number;
|
||||
/** Total token count in the cached part of the prompt, i.e. in the cached content. */
|
||||
cachedContentTokenCount?: number;
|
||||
}
|
||||
/**
|
||||
* If the prompt was blocked, this will be populated with `blockReason` and
|
||||
* the relevant `safetyRatings`.
|
||||
* @public
|
||||
*/
|
||||
export interface PromptFeedback {
|
||||
blockReason: BlockReason;
|
||||
safetyRatings: SafetyRating[];
|
||||
blockReasonMessage?: string;
|
||||
}
|
||||
/**
|
||||
* A candidate returned as part of a {@link GenerateContentResponse}.
|
||||
* @public
|
||||
*/
|
||||
export interface GenerateContentCandidate {
|
||||
index: number;
|
||||
content: Content;
|
||||
finishReason?: FinishReason;
|
||||
finishMessage?: string;
|
||||
safetyRatings?: SafetyRating[];
|
||||
citationMetadata?: CitationMetadata;
|
||||
/** Average log probability score of the candidate. */
|
||||
avgLogprobs?: number;
|
||||
/** Log-likelihood scores for the response tokens and top tokens. */
|
||||
logprobsResult?: LogprobsResult;
|
||||
/** Search grounding metadata. */
|
||||
groundingMetadata?: GroundingMetadata;
|
||||
}
|
||||
/**
|
||||
* Citation metadata that may be found on a {@link GenerateContentCandidate}.
|
||||
* @public
|
||||
*/
|
||||
export interface CitationMetadata {
|
||||
citationSources: CitationSource[];
|
||||
}
|
||||
/**
|
||||
* A single citation source.
|
||||
* @public
|
||||
*/
|
||||
export interface CitationSource {
|
||||
startIndex?: number;
|
||||
endIndex?: number;
|
||||
uri?: string;
|
||||
license?: string;
|
||||
}
|
||||
/**
|
||||
* A safety rating associated with a {@link GenerateContentCandidate}
|
||||
* @public
|
||||
*/
|
||||
export interface SafetyRating {
|
||||
category: HarmCategory;
|
||||
probability: HarmProbability;
|
||||
}
|
||||
/**
|
||||
* Response from calling {@link GenerativeModel.countTokens}.
|
||||
* @public
|
||||
*/
|
||||
export interface CountTokensResponse {
|
||||
totalTokens: number;
|
||||
}
|
||||
/**
|
||||
* Response from calling {@link GenerativeModel.embedContent}.
|
||||
* @public
|
||||
*/
|
||||
export interface EmbedContentResponse {
|
||||
embedding: ContentEmbedding;
|
||||
}
|
||||
/**
|
||||
* Response from calling {@link GenerativeModel.batchEmbedContents}.
|
||||
* @public
|
||||
*/
|
||||
export interface BatchEmbedContentsResponse {
|
||||
embeddings: ContentEmbedding[];
|
||||
}
|
||||
/**
|
||||
* A single content embedding.
|
||||
* @public
|
||||
*/
|
||||
export interface ContentEmbedding {
|
||||
values: number[];
|
||||
}
|
||||
/**
|
||||
* Details object that may be included in an error response.
|
||||
* @public
|
||||
*/
|
||||
export interface ErrorDetails {
|
||||
"@type"?: string;
|
||||
reason?: string;
|
||||
domain?: string;
|
||||
metadata?: Record<string, unknown>;
|
||||
[key: string]: unknown;
|
||||
}
|
||||
177
node_modules/@google/generative-ai/dist/types/search-grounding.d.ts
generated
vendored
Normal file
177
node_modules/@google/generative-ai/dist/types/search-grounding.d.ts
generated
vendored
Normal file
@ -0,0 +1,177 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { DynamicRetrievalMode } from "./enums";
|
||||
/**
|
||||
* Retrieval tool that is powered by Google search.
|
||||
* @public
|
||||
*/
|
||||
export declare interface GoogleSearchRetrievalTool {
|
||||
/**
|
||||
* Google search retrieval tool config.
|
||||
*/
|
||||
googleSearchRetrieval?: GoogleSearchRetrieval;
|
||||
}
|
||||
/**
|
||||
* Retrieval tool that is powered by Google search.
|
||||
* @public
|
||||
*/
|
||||
export declare interface GoogleSearchRetrieval {
|
||||
/**
|
||||
* Specifies the dynamic retrieval configuration for the given source.
|
||||
*/
|
||||
dynamicRetrievalConfig?: DynamicRetrievalConfig;
|
||||
}
|
||||
/**
|
||||
* Specifies the dynamic retrieval configuration for the given source.
|
||||
* @public
|
||||
*/
|
||||
export declare interface DynamicRetrievalConfig {
|
||||
/**
|
||||
* The mode of the predictor to be used in dynamic retrieval.
|
||||
*/
|
||||
mode?: DynamicRetrievalMode;
|
||||
/**
|
||||
* The threshold to be used in dynamic retrieval. If not set, a system default
|
||||
* value is used.
|
||||
*/
|
||||
dynamicThreshold?: number;
|
||||
}
|
||||
/**
|
||||
* Metadata returned to client when grounding is enabled.
|
||||
* @public
|
||||
*/
|
||||
export declare interface GroundingMetadata {
|
||||
/**
|
||||
* Google search entry for the following-up web searches.
|
||||
*/
|
||||
searchEntryPoint?: SearchEntryPoint;
|
||||
/**
|
||||
* List of supporting references retrieved from specified grounding source.
|
||||
*/
|
||||
groundingChuncks?: GroundingChunk[];
|
||||
/**
|
||||
* List of grounding support.
|
||||
*/
|
||||
groundingSupport?: GroundingSupport[];
|
||||
/**
|
||||
* Metadata related to retrieval in the grounding flow.
|
||||
*/
|
||||
retrievalMetadata?: RetrievalMetadata;
|
||||
/**
|
||||
* * Web search queries for the following-up web search.
|
||||
*/
|
||||
webSearchQueries: string[];
|
||||
}
|
||||
/**
|
||||
* Google search entry point.
|
||||
* @public
|
||||
*/
|
||||
export declare interface SearchEntryPoint {
|
||||
/**
|
||||
* Web content snippet that can be embedded in a web page or an app webview.
|
||||
*/
|
||||
renderedContent?: string;
|
||||
/**
|
||||
* Base64 encoded JSON representing array of <search term, search url> tuple.
|
||||
*/
|
||||
sdkBlob?: string;
|
||||
}
|
||||
/**
|
||||
* Grounding chunk.
|
||||
* @public
|
||||
*/
|
||||
export declare interface GroundingChunk {
|
||||
/**
|
||||
* Chunk from the web.
|
||||
*/
|
||||
web?: GroundingChunkWeb;
|
||||
}
|
||||
/**
|
||||
* Chunk from the web.
|
||||
* @public
|
||||
*/
|
||||
export declare interface GroundingChunkWeb {
|
||||
/**
|
||||
* URI reference of the chunk.
|
||||
*/
|
||||
uri?: string;
|
||||
/**
|
||||
* Title of the chunk.
|
||||
*/
|
||||
title?: string;
|
||||
}
|
||||
/**
|
||||
* Grounding support.
|
||||
* @public
|
||||
*/
|
||||
export declare interface GroundingSupport {
|
||||
/**
|
||||
* URI reference of the chunk.
|
||||
*/
|
||||
segment?: string;
|
||||
/**
|
||||
* A list of indices (into 'grounding_chunk') specifying the citations
|
||||
* associated with the claim. For instance [1,3,4] means that
|
||||
* grounding_chunk[1], grounding_chunk[3], grounding_chunk[4] are the
|
||||
* retrieved content attributed to the claim.
|
||||
*/
|
||||
groundingChunckIndices?: number[];
|
||||
/**
|
||||
* Confidence score of the support references. Ranges from 0 to 1. 1 is the
|
||||
* most confident. This list must have the same size as the
|
||||
* grounding_chunk_indices.
|
||||
*/
|
||||
confidenceScores?: number[];
|
||||
}
|
||||
/**
|
||||
* Segment of the content.
|
||||
* @public
|
||||
*/
|
||||
export declare interface GroundingSupportSegment {
|
||||
/**
|
||||
* The index of a Part object within its parent Content object.
|
||||
*/
|
||||
partIndex?: number;
|
||||
/**
|
||||
* Start index in the given Part, measured in bytes. Offset from the start of
|
||||
* the Part, inclusive, starting at zero.
|
||||
*/
|
||||
startIndex?: number;
|
||||
/**
|
||||
* End index in the given Part, measured in bytes. Offset from the start of
|
||||
* the Part, exclusive, starting at zero.
|
||||
*/
|
||||
endIndex?: number;
|
||||
/**
|
||||
* The text corresponding to the segment from the response.
|
||||
*/
|
||||
text?: string;
|
||||
}
|
||||
/**
|
||||
* Metadata related to retrieval in the grounding flow.
|
||||
* @public
|
||||
*/
|
||||
export declare interface RetrievalMetadata {
|
||||
/**
|
||||
* Score indicating how likely information from google search could help
|
||||
* answer the prompt. The score is in the range [0, 1], where 0 is the least
|
||||
* likely and 1 is the most likely. This score is only populated when google
|
||||
* search grounding and dynamic retrieval is enabled. It will becompared to
|
||||
* the threshold to determine whether to trigger google search.
|
||||
*/
|
||||
googleSearchDynamicRetrievalScore?: number;
|
||||
}
|
||||
111
node_modules/@google/generative-ai/dist/types/server/caching.d.ts
generated
vendored
Normal file
111
node_modules/@google/generative-ai/dist/types/server/caching.d.ts
generated
vendored
Normal file
@ -0,0 +1,111 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { Content, Part } from "../content";
|
||||
import { ToolConfig } from "../function-calling";
|
||||
import { Tool } from "../requests";
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export interface CachedContentBase {
|
||||
model?: string;
|
||||
contents: Content[];
|
||||
tools?: Tool[];
|
||||
toolConfig?: ToolConfig;
|
||||
systemInstruction?: string | Part | Content;
|
||||
/**
|
||||
* Expiration time in ISO string format. Specify either this or `ttlSeconds`
|
||||
* when creating a `CachedContent`.
|
||||
*/
|
||||
expireTime?: string;
|
||||
displayName?: string;
|
||||
}
|
||||
/**
|
||||
* Describes `CachedContent` interface for sending to the server (if creating)
|
||||
* or received from the server (using getters or list methods).
|
||||
* @public
|
||||
*/
|
||||
export interface CachedContent extends CachedContentBase {
|
||||
name?: string;
|
||||
/**
|
||||
* protobuf.Duration format (ex. "3.0001s").
|
||||
*/
|
||||
ttl?: string;
|
||||
/**
|
||||
* `CachedContent` creation time in ISO string format.
|
||||
*/
|
||||
createTime?: string;
|
||||
/**
|
||||
* `CachedContent` update time in ISO string format.
|
||||
*/
|
||||
updateTime?: string;
|
||||
}
|
||||
/**
|
||||
* Params to pass to {@link GoogleAICacheManager.create}.
|
||||
* @public
|
||||
*/
|
||||
export interface CachedContentCreateParams extends CachedContentBase {
|
||||
/**
|
||||
* `CachedContent` ttl in seconds. Specify either this or `expireTime`
|
||||
* when creating a `CachedContent`.
|
||||
*/
|
||||
ttlSeconds?: number;
|
||||
}
|
||||
/**
|
||||
* Fields that can be updated in an existing content cache.
|
||||
* @public
|
||||
*/
|
||||
export interface CachedContentUpdateInputFields {
|
||||
ttlSeconds?: number;
|
||||
expireTime?: string;
|
||||
}
|
||||
/**
|
||||
* Params to pass to {@link GoogleAICacheManager.update}.
|
||||
* @public
|
||||
*/
|
||||
export interface CachedContentUpdateParams {
|
||||
cachedContent: CachedContentUpdateInputFields;
|
||||
/**
|
||||
* protobuf FieldMask. If not specified, updates all provided fields.
|
||||
*/
|
||||
updateMask?: string[];
|
||||
}
|
||||
/**
|
||||
* Fields that can be updated in an existing content cache.
|
||||
* @internal
|
||||
*/
|
||||
export interface _CachedContentUpdateRequestFields {
|
||||
ttl?: string;
|
||||
expireTime?: string;
|
||||
}
|
||||
/**
|
||||
* Params as sent to the backend (ttl instead of ttlSeconds).
|
||||
* @internal
|
||||
*/
|
||||
export interface _CachedContentUpdateRequest {
|
||||
cachedContent: _CachedContentUpdateRequestFields;
|
||||
/**
|
||||
* protobuf FieldMask
|
||||
*/
|
||||
updateMask?: string[];
|
||||
}
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
export interface ListCacheResponse {
|
||||
cachedContents: CachedContent[];
|
||||
nextPageToken?: string;
|
||||
}
|
||||
86
node_modules/@google/generative-ai/dist/types/server/files.d.ts
generated
vendored
Normal file
86
node_modules/@google/generative-ai/dist/types/server/files.d.ts
generated
vendored
Normal file
@ -0,0 +1,86 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { RpcStatus } from "./shared";
|
||||
/**
|
||||
* Metadata to provide alongside a file upload
|
||||
* @public
|
||||
*/
|
||||
export interface FileMetadata {
|
||||
name?: string;
|
||||
displayName?: string;
|
||||
mimeType: string;
|
||||
}
|
||||
/**
|
||||
* File metadata response from server.
|
||||
* @public
|
||||
*/
|
||||
export interface FileMetadataResponse {
|
||||
name: string;
|
||||
displayName?: string;
|
||||
mimeType: string;
|
||||
sizeBytes: string;
|
||||
createTime: string;
|
||||
updateTime: string;
|
||||
expirationTime: string;
|
||||
sha256Hash: string;
|
||||
uri: string;
|
||||
state: FileState;
|
||||
/**
|
||||
* Error populated if file processing has failed.
|
||||
*/
|
||||
error?: RpcStatus;
|
||||
/**
|
||||
* Video metadata populated after processing is complete.
|
||||
*/
|
||||
videoMetadata?: VideoMetadata;
|
||||
}
|
||||
/**
|
||||
* Response from calling {@link GoogleAIFileManager.listFiles}
|
||||
* @public
|
||||
*/
|
||||
export interface ListFilesResponse {
|
||||
files: FileMetadataResponse[];
|
||||
nextPageToken?: string;
|
||||
}
|
||||
/**
|
||||
* Response from calling {@link GoogleAIFileManager.uploadFile}
|
||||
* @public
|
||||
*/
|
||||
export interface UploadFileResponse {
|
||||
file: FileMetadataResponse;
|
||||
}
|
||||
/**
|
||||
* Processing state of the `File`.
|
||||
* @public
|
||||
*/
|
||||
export declare enum FileState {
|
||||
STATE_UNSPECIFIED = "STATE_UNSPECIFIED",
|
||||
PROCESSING = "PROCESSING",
|
||||
ACTIVE = "ACTIVE",
|
||||
FAILED = "FAILED"
|
||||
}
|
||||
/**
|
||||
* Metadata populated when video has been processed.
|
||||
* @public
|
||||
*/
|
||||
export interface VideoMetadata {
|
||||
/**
|
||||
* The video duration in
|
||||
* protobuf {@link https://cloud.google.com/ruby/docs/reference/google-cloud-workflows-v1/latest/Google-Protobuf-Duration#json-mapping | Duration} format.
|
||||
*/
|
||||
videoDuration: string;
|
||||
}
|
||||
22
node_modules/@google/generative-ai/dist/types/server/index.d.ts
generated
vendored
Normal file
22
node_modules/@google/generative-ai/dist/types/server/index.d.ts
generated
vendored
Normal file
@ -0,0 +1,22 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
export * from "./files";
|
||||
export * from "./caching";
|
||||
export * from "./shared";
|
||||
export { RequestOptions, Tool, CodeExecutionTool, SingleRequestOptions, } from "../requests";
|
||||
export * from "../content";
|
||||
export { FunctionCallingMode } from "../enums";
|
||||
45
node_modules/@google/generative-ai/dist/types/server/shared.d.ts
generated
vendored
Normal file
45
node_modules/@google/generative-ai/dist/types/server/shared.d.ts
generated
vendored
Normal file
@ -0,0 +1,45 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2024 Google LLC
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { ErrorDetails } from "../responses";
|
||||
export { ErrorDetails };
|
||||
/**
|
||||
* Standard RPC error status object.
|
||||
* @public
|
||||
*/
|
||||
export interface RpcStatus {
|
||||
/**
|
||||
* Error status code
|
||||
*/
|
||||
code: number;
|
||||
/**
|
||||
* A developer-facing error message.
|
||||
*/
|
||||
message: string;
|
||||
/**
|
||||
* A list of messages that carry the error details.
|
||||
*/
|
||||
details?: ErrorDetails[];
|
||||
}
|
||||
/**
|
||||
* Params to pass to {@link GoogleAIFileManager.listFiles} or
|
||||
* {@link GoogleAICacheManager.list}
|
||||
* @public
|
||||
*/
|
||||
export interface ListParams {
|
||||
pageSize?: number;
|
||||
pageToken?: string;
|
||||
}
|
||||
92
node_modules/@google/generative-ai/package.json
generated
vendored
Normal file
92
node_modules/@google/generative-ai/package.json
generated
vendored
Normal file
@ -0,0 +1,92 @@
|
||||
{
|
||||
"name": "@google/generative-ai",
|
||||
"version": "0.21.0",
|
||||
"description": "Google AI JavaScript SDK",
|
||||
"main": "dist/index.js",
|
||||
"module": "dist/index.mjs",
|
||||
"typings": "dist/generative-ai.d.ts",
|
||||
"exports": {
|
||||
".": {
|
||||
"types": "./dist/generative-ai.d.ts",
|
||||
"require": "./dist/index.js",
|
||||
"import": "./dist/index.mjs",
|
||||
"default": "./dist/index.js"
|
||||
},
|
||||
"./server": {
|
||||
"types": "./dist/server/server.d.ts",
|
||||
"require": "./dist/server/index.js",
|
||||
"import": "./dist/server/index.mjs",
|
||||
"default": "./dist/server/index.js"
|
||||
},
|
||||
"./package.json": "./package.json"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=18.0.0"
|
||||
},
|
||||
"files": [
|
||||
"server",
|
||||
"dist"
|
||||
],
|
||||
"server": [
|
||||
"dist",
|
||||
"server/package.json"
|
||||
],
|
||||
"scripts": {
|
||||
"build": "rollup -c && yarn api-report",
|
||||
"test": "yarn lint && yarn test:node:unit",
|
||||
"test:web:integration": "yarn build && yarn web-test-runner",
|
||||
"test:node:unit": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\"}' mocha \"src/**/*.test.ts\"",
|
||||
"test:node:integration": "yarn build && TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\"}' mocha \"test-integration/node/**/*.test.ts\"",
|
||||
"lint": "eslint -c .eslintrc.js '**/*.ts' --ignore-path './.gitignore'",
|
||||
"api-report": "api-extractor run -c api-extractor.json --local --verbose && api-extractor run -c api-extractor.server.json --local --verbose",
|
||||
"docs": "yarn build && yarn api-documenter markdown -i ./temp/main -o ./docs/reference/main && yarn api-documenter markdown -i ./temp/server -o ./docs/reference/server",
|
||||
"format": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"nodenext\"}' yarn ts-node scripts/run-format.ts",
|
||||
"format:check": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"nodenext\"}' yarn ts-node scripts/check-format.ts"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@changesets/cli": "^2.27.1",
|
||||
"@esm-bundle/chai": "^4.3.4-fix.0",
|
||||
"@microsoft/api-documenter": "^7.23.12",
|
||||
"@microsoft/api-extractor": "^7.38.2",
|
||||
"@rollup/plugin-json": "^6.0.1",
|
||||
"@types/chai": "^4.3.9",
|
||||
"@types/chai-as-promised": "^7.1.8",
|
||||
"@types/mocha": "^10.0.3",
|
||||
"@types/node": "^20.8.10",
|
||||
"@types/sinon": "^10.0.20",
|
||||
"@types/sinon-chai": "^3.2.11",
|
||||
"@typescript-eslint/eslint-plugin": "^6.9.1",
|
||||
"@typescript-eslint/eslint-plugin-tslint": "^6.9.1",
|
||||
"@typescript-eslint/parser": "^6.9.1",
|
||||
"@web/dev-server-esbuild": "^1.0.1",
|
||||
"@web/test-runner": "^0.18.0",
|
||||
"chai": "^4.3.10",
|
||||
"chai-as-promised": "^7.1.1",
|
||||
"chai-deep-equal-ignore-undefined": "^1.1.1",
|
||||
"eslint": "^8.52.0",
|
||||
"eslint-plugin-import": "^2.29.0",
|
||||
"eslint-plugin-unused-imports": "^3.0.0",
|
||||
"glob": "^10.3.10",
|
||||
"mocha": "^10.2.0",
|
||||
"prettier": "^3.0.3",
|
||||
"rollup": "^4.2.0",
|
||||
"rollup-plugin-dts": "^6.1.0",
|
||||
"rollup-plugin-replace": "^2.2.0",
|
||||
"rollup-plugin-typescript2": "^0.36.0",
|
||||
"sinon": "^17.0.1",
|
||||
"sinon-chai": "^3.7.0",
|
||||
"ts-node": "^10.9.1",
|
||||
"tslint": "^6.1.3",
|
||||
"typescript": "5.2.2"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/google/generative-ai-js.git"
|
||||
},
|
||||
"author": "",
|
||||
"license": "Apache-2.0",
|
||||
"bugs": {
|
||||
"url": "https://github.com/google/generative-ai-js/issues"
|
||||
},
|
||||
"homepage": "https://github.com/google/generative-ai-js#readme"
|
||||
}
|
||||
8
node_modules/@google/generative-ai/server/package.json
generated
vendored
Normal file
8
node_modules/@google/generative-ai/server/package.json
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "@google/generative-ai-server",
|
||||
"description": "GoogleAI JS server-environment-only features",
|
||||
"main": "../dist/server/index.js",
|
||||
"browser": "../dist/server/index.mjs",
|
||||
"module": "../dist/server/index.mjs",
|
||||
"typings": "../dist/server/server.d.ts"
|
||||
}
|
||||
Reference in New Issue
Block a user