@promptbook/openai 0.94.0 → 0.98.0-10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +59 -6
- package/esm/index.es.js +607 -9
- package/esm/index.es.js.map +1 -1
- package/esm/typings/src/_packages/anthropic-claude.index.d.ts +2 -2
- package/esm/typings/src/_packages/cli.index.d.ts +4 -0
- package/esm/typings/src/_packages/core.index.d.ts +2 -0
- package/esm/typings/src/_packages/openai.index.d.ts +10 -0
- package/esm/typings/src/_packages/types.index.d.ts +14 -4
- package/esm/typings/src/_packages/{wizzard.index.d.ts → wizard.index.d.ts} +6 -2
- package/esm/typings/src/cli/cli-commands/prettify.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/test-command.d.ts +1 -1
- package/esm/typings/src/config.d.ts +1 -1
- package/esm/typings/src/conversion/archive/loadArchive.d.ts +1 -1
- package/esm/typings/src/conversion/archive/saveArchive.d.ts +2 -2
- package/esm/typings/src/conversion/prettify/renderPipelineMermaidOptions.d.ts +1 -1
- package/esm/typings/src/dialogs/callback/CallbackInterfaceTools.d.ts +1 -1
- package/esm/typings/src/execution/AbstractTaskResult.d.ts +2 -2
- package/esm/typings/src/execution/createPipelineExecutor/$OngoingTaskResult.d.ts +8 -0
- package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorOptions.d.ts +1 -1
- package/esm/typings/src/execution/execution-report/ExecutionPromptReportJson.d.ts +2 -2
- package/esm/typings/src/execution/translation/automatic-translate/translateMessages.d.ts +1 -1
- package/esm/typings/src/execution/utils/validatePromptResult.d.ts +53 -0
- package/esm/typings/src/llm-providers/_common/register/{$provideLlmToolsForWizzardOrCli.d.ts → $provideLlmToolsForWizardOrCli.d.ts} +2 -2
- package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +3 -3
- package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts +2 -2
- package/esm/typings/src/llm-providers/anthropic-claude/register-configuration.d.ts +1 -1
- package/esm/typings/src/llm-providers/anthropic-claude/register-constructor.d.ts +1 -1
- package/esm/typings/src/llm-providers/azure-openai/register-configuration.d.ts +1 -1
- package/esm/typings/src/llm-providers/azure-openai/register-constructor.d.ts +1 -1
- package/esm/typings/src/llm-providers/deepseek/register-configuration.d.ts +1 -1
- package/esm/typings/src/llm-providers/deepseek/register-constructor.d.ts +1 -1
- package/esm/typings/src/llm-providers/google/register-configuration.d.ts +1 -1
- package/esm/typings/src/llm-providers/google/register-constructor.d.ts +1 -1
- package/esm/typings/src/llm-providers/ollama/register-configuration.d.ts +1 -1
- package/esm/typings/src/llm-providers/ollama/register-constructor.d.ts +1 -1
- package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionTools.d.ts +1 -1
- package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionToolsOptions.d.ts +2 -2
- package/esm/typings/src/llm-providers/openai/OpenAiCompatibleExecutionTools.d.ts +4 -4
- package/esm/typings/src/llm-providers/openai/OpenAiCompatibleExecutionToolsOptions.d.ts +52 -0
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionToolsOptions.d.ts +3 -5
- package/esm/typings/src/llm-providers/openai/createOpenAiCompatibleExecutionTools.d.ts +74 -0
- package/esm/typings/src/llm-providers/openai/register-configuration.d.ts +13 -2
- package/esm/typings/src/llm-providers/openai/register-constructor.d.ts +16 -2
- package/esm/typings/src/remote-server/socket-types/listModels/PromptbookServer_ListModels_Request.d.ts +1 -1
- package/esm/typings/src/scrapers/_boilerplate/createBoilerplateScraper.d.ts +1 -1
- package/esm/typings/src/scrapers/_boilerplate/register-constructor.d.ts +1 -1
- package/esm/typings/src/scrapers/_boilerplate/register-metadata.d.ts +2 -2
- package/esm/typings/src/scrapers/_common/prepareKnowledgePieces.d.ts +1 -1
- package/esm/typings/src/scrapers/_common/register/ScraperAndConverterMetadata.d.ts +1 -1
- package/esm/typings/src/scrapers/document/createDocumentScraper.d.ts +1 -1
- package/esm/typings/src/scrapers/document/register-constructor.d.ts +1 -1
- package/esm/typings/src/scrapers/document/register-metadata.d.ts +2 -2
- package/esm/typings/src/scrapers/document-legacy/createLegacyDocumentScraper.d.ts +1 -1
- package/esm/typings/src/scrapers/document-legacy/register-constructor.d.ts +1 -1
- package/esm/typings/src/scrapers/document-legacy/register-metadata.d.ts +2 -2
- package/esm/typings/src/scrapers/markdown/createMarkdownScraper.d.ts +1 -4
- package/esm/typings/src/scrapers/markdown/register-constructor.d.ts +1 -1
- package/esm/typings/src/scrapers/markdown/register-metadata.d.ts +2 -2
- package/esm/typings/src/scrapers/markitdown/createMarkitdownScraper.d.ts +1 -1
- package/esm/typings/src/scrapers/markitdown/register-constructor.d.ts +1 -1
- package/esm/typings/src/scrapers/markitdown/register-metadata.d.ts +2 -2
- package/esm/typings/src/scrapers/pdf/createPdfScraper.d.ts +1 -1
- package/esm/typings/src/scrapers/pdf/register-constructor.d.ts +1 -1
- package/esm/typings/src/scrapers/pdf/register-metadata.d.ts +2 -2
- package/esm/typings/src/scrapers/website/createWebsiteScraper.d.ts +1 -1
- package/esm/typings/src/scrapers/website/register-constructor.d.ts +1 -1
- package/esm/typings/src/scrapers/website/register-metadata.d.ts +2 -2
- package/esm/typings/src/types/typeAliases.d.ts +1 -1
- package/esm/typings/src/utils/files/listAllFiles.d.ts +1 -1
- package/esm/typings/src/version.d.ts +1 -1
- package/esm/typings/src/{wizzard → wizard}/$getCompiledBook.d.ts +2 -2
- package/esm/typings/src/{wizzard/wizzard.d.ts → wizard/wizard.d.ts} +6 -6
- package/package.json +3 -14
- package/umd/index.umd.js +611 -12
- package/umd/index.umd.js.map +1 -1
package/README.md
CHANGED
|
@@ -25,6 +25,10 @@ Write AI applications using plain human language across multiple models and plat
|
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
|
|
28
|
+
<blockquote style="color: #ff8811">
|
|
29
|
+
<b>⚠ Warning:</b> This is a pre-release version of the library. It is not yet ready for production use. Please look at <a href="https://www.npmjs.com/package/@promptbook/core?activeTab=versions">latest stable release</a>.
|
|
30
|
+
</blockquote>
|
|
31
|
+
|
|
28
32
|
## 📦 Package `@promptbook/openai`
|
|
29
33
|
|
|
30
34
|
- Promptbooks are [divided into several](#-packages) packages, all are published from [single monorepo](https://github.com/webgptorg/promptbook).
|
|
@@ -94,7 +98,7 @@ const { isSuccessful, errors, outputParameters, executionReport } = result;
|
|
|
94
98
|
console.info(outputParameters);
|
|
95
99
|
```
|
|
96
100
|
|
|
97
|
-
## 🤺 Usage with OpenAI
|
|
101
|
+
## 🤺 Usage with OpenAI's Assistants (GPTs)
|
|
98
102
|
|
|
99
103
|
> TODO: Write a guide how to use OpenAI's Assistants with Promptbook
|
|
100
104
|
|
|
@@ -108,11 +112,11 @@ console.info(outputParameters);
|
|
|
108
112
|
Run books without any settings, boilerplate or struggle in Node.js:
|
|
109
113
|
|
|
110
114
|
```typescript
|
|
111
|
-
import {
|
|
115
|
+
import { wizard } from '@promptbook/wizard';
|
|
112
116
|
|
|
113
117
|
const {
|
|
114
118
|
outputParameters: { joke },
|
|
115
|
-
} = await
|
|
119
|
+
} = await wizard.execute(`https://github.com/webgptorg/book/blob/main/books/templates/generic.book`, {
|
|
116
120
|
topic: 'Prague',
|
|
117
121
|
});
|
|
118
122
|
|
|
@@ -197,7 +201,7 @@ const llm = [
|
|
|
197
201
|
// <- TODO: [🧱] Implement in a functional (not new Class) way
|
|
198
202
|
{
|
|
199
203
|
resourceName: process.env.AZUREOPENAI_RESOURCE_NAME,
|
|
200
|
-
deploymentName: process.env.AZUREOPENAI_DEPLOYMENT_NAME
|
|
204
|
+
deploymentName: process.env.AZUREOPENAI_DEPLOYMENT_NAME
|
|
201
205
|
apiKey: process.env.AZUREOPENAI_API_KEY,
|
|
202
206
|
},
|
|
203
207
|
),
|
|
@@ -245,6 +249,55 @@ See the other model integrations:
|
|
|
245
249
|
|
|
246
250
|
|
|
247
251
|
|
|
252
|
+
## 🤖 Using Promptbook as an OpenAI-compatible model
|
|
253
|
+
|
|
254
|
+
You can use Promptbook books as if they were OpenAI models by using the OpenAI-compatible endpoint. This allows you to use the standard OpenAI SDK with Promptbook books.
|
|
255
|
+
|
|
256
|
+
First, start the Promptbook server:
|
|
257
|
+
|
|
258
|
+
```typescript
|
|
259
|
+
import { startRemoteServer } from '@promptbook/remote-server';
|
|
260
|
+
|
|
261
|
+
// Start the server
|
|
262
|
+
await startRemoteServer({
|
|
263
|
+
port: 3000,
|
|
264
|
+
collection: await createCollectionFromDirectory('./books'),
|
|
265
|
+
isAnonymousModeAllowed: true,
|
|
266
|
+
isApplicationModeAllowed: true,
|
|
267
|
+
});
|
|
268
|
+
```
|
|
269
|
+
|
|
270
|
+
Then use the standard OpenAI SDK with the server URL:
|
|
271
|
+
|
|
272
|
+
```typescript
|
|
273
|
+
import OpenAI from 'openai';
|
|
274
|
+
|
|
275
|
+
// Create OpenAI client pointing to your Promptbook server
|
|
276
|
+
const openai = new OpenAI({
|
|
277
|
+
baseURL: 'http://localhost:3000', // Your Promptbook server URL
|
|
278
|
+
apiKey: 'not-needed', // API key is not needed for Promptbook
|
|
279
|
+
});
|
|
280
|
+
|
|
281
|
+
// Use any Promptbook book as a model
|
|
282
|
+
const response = await openai.chat.completions.create({
|
|
283
|
+
model: 'https://promptbook.studio/my-collection/write-article.book', // Book URL as model name
|
|
284
|
+
messages: [
|
|
285
|
+
{
|
|
286
|
+
role: 'user',
|
|
287
|
+
content: 'Write a short story about a cat',
|
|
288
|
+
},
|
|
289
|
+
],
|
|
290
|
+
});
|
|
291
|
+
|
|
292
|
+
console.log(response.choices[0].message.content);
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
This allows you to:
|
|
296
|
+
|
|
297
|
+
- Use Promptbook books with any OpenAI-compatible client
|
|
298
|
+
- Integrate Promptbook into existing OpenAI-based applications
|
|
299
|
+
- Use Promptbook books as models in other AI frameworks
|
|
300
|
+
|
|
248
301
|
|
|
249
302
|
---
|
|
250
303
|
|
|
@@ -486,13 +539,13 @@ Or you can install them separately:
|
|
|
486
539
|
|
|
487
540
|
- ⭐ **[ptbk](https://www.npmjs.com/package/ptbk)** - Bundle of all packages, when you want to install everything and you don't care about the size
|
|
488
541
|
- **[promptbook](https://www.npmjs.com/package/promptbook)** - Same as `ptbk`
|
|
489
|
-
- ⭐🧙♂️ **[@promptbook/
|
|
542
|
+
- ⭐🧙♂️ **[@promptbook/wizard](https://www.npmjs.com/package/@promptbook/wizard)** - Wizard to just run the books in node without any struggle
|
|
490
543
|
- **[@promptbook/core](https://www.npmjs.com/package/@promptbook/core)** - Core of the library, it contains the main logic for promptbooks
|
|
491
544
|
- **[@promptbook/node](https://www.npmjs.com/package/@promptbook/node)** - Core of the library for Node.js environment
|
|
492
545
|
- **[@promptbook/browser](https://www.npmjs.com/package/@promptbook/browser)** - Core of the library for browser environment
|
|
493
546
|
- ⭐ **[@promptbook/utils](https://www.npmjs.com/package/@promptbook/utils)** - Utility functions used in the library but also useful for individual use in preprocessing and postprocessing LLM inputs and outputs
|
|
494
547
|
- **[@promptbook/markdown-utils](https://www.npmjs.com/package/@promptbook/markdown-utils)** - Utility functions used for processing markdown
|
|
495
|
-
- _(Not finished)_ **[@promptbook/
|
|
548
|
+
- _(Not finished)_ **[@promptbook/wizard](https://www.npmjs.com/package/@promptbook/wizard)** - Wizard for creating+running promptbooks in single line
|
|
496
549
|
- **[@promptbook/javascript](https://www.npmjs.com/package/@promptbook/javascript)** - Execution tools for javascript inside promptbooks
|
|
497
550
|
- **[@promptbook/openai](https://www.npmjs.com/package/@promptbook/openai)** - Execution tools for OpenAI API, wrapper around OpenAI SDK
|
|
498
551
|
- **[@promptbook/anthropic-claude](https://www.npmjs.com/package/@promptbook/anthropic-claude)** - Execution tools for Anthropic Claude API, wrapper around Anthropic Claude SDK
|