@promptbook/remote-server 0.101.0-1 → 0.101.0-3
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 +45 -0
- package/esm/index.es.js +1 -1
- package/esm/typings/src/_packages/components.index.d.ts +8 -0
- package/esm/typings/src/book-components/Chat/Chat/Chat.d.ts +0 -5
- package/esm/typings/src/book-components/Chat/Chat/ChatProps.d.ts +28 -2
- package/esm/typings/src/book-components/Chat/Chat/constants.d.ts +8 -0
- package/esm/typings/src/book-components/icons/ArrowIcon.d.ts +9 -0
- package/esm/typings/src/book-components/icons/ResetIcon.d.ts +6 -0
- package/esm/typings/src/book-components/icons/SendIcon.d.ts +8 -0
- package/esm/typings/src/book-components/icons/TemplateIcon.d.ts +8 -0
- package/esm/typings/src/version.d.ts +1 -1
- package/package.json +2 -2
- package/umd/index.umd.js +1 -1
package/README.md
CHANGED
|
@@ -49,6 +49,51 @@ npm install @promptbook/remote-server
|
|
|
49
49
|
```
|
|
50
50
|
|
|
51
51
|
|
|
52
|
+
Remote server implementation for Promptbook, enabling distributed execution of promptbook pipelines across network boundaries with REST API and WebSocket support.
|
|
53
|
+
|
|
54
|
+
## 🎯 Purpose and Motivation
|
|
55
|
+
|
|
56
|
+
This package provides a remote server that allows promptbook pipelines to be executed over the network. It enables distributed architectures where promptbook execution can be centralized on powerful servers while clients can access the functionality remotely, making it ideal for scaling promptbook applications and providing API access to promptbook collections.
|
|
57
|
+
|
|
58
|
+
## 🔧 High-Level Functionality
|
|
59
|
+
|
|
60
|
+
The package provides remote server capabilities:
|
|
61
|
+
- **HTTP REST API**: RESTful endpoints for pipeline execution and management
|
|
62
|
+
- **WebSocket Support**: Real-time communication for streaming execution results
|
|
63
|
+
- **Authentication**: Support for both anonymous and application-based authentication
|
|
64
|
+
- **Pipeline Management**: Remote access to promptbook collections and pipelines
|
|
65
|
+
- **Execution Orchestration**: Distributed execution of promptbook pipelines
|
|
66
|
+
- **OpenAI Compatibility**: OpenAI-compatible API endpoints for seamless integration
|
|
67
|
+
|
|
68
|
+
## ✨ Key Features
|
|
69
|
+
|
|
70
|
+
- 🌐 **Remote Execution** - Execute promptbook pipelines over HTTP/WebSocket
|
|
71
|
+
- 🔐 **Authentication Modes** - Support for anonymous and application-based access
|
|
72
|
+
- 📡 **Real-time Communication** - WebSocket support for streaming results
|
|
73
|
+
- 🔌 **OpenAI Compatible** - Use promptbooks as OpenAI-compatible models
|
|
74
|
+
- 🚀 **Scalable Architecture** - Distribute promptbook execution across servers
|
|
75
|
+
- 📊 **Pipeline Management** - Remote access to collections and individual pipelines
|
|
76
|
+
- 🛡️ **Security** - Configurable authentication and access control
|
|
77
|
+
- ⚡ **High Performance** - Optimized for concurrent pipeline execution
|
|
78
|
+
|
|
79
|
+
## 📦 Exported Entities
|
|
80
|
+
|
|
81
|
+
### Version Information
|
|
82
|
+
- `BOOK_LANGUAGE_VERSION` - Current book language version
|
|
83
|
+
- `PROMPTBOOK_ENGINE_VERSION` - Current engine version
|
|
84
|
+
|
|
85
|
+
### Server Management
|
|
86
|
+
- `startRemoteServer` - Start the remote promptbook server
|
|
87
|
+
|
|
88
|
+
### Configuration Types
|
|
89
|
+
- `RemoteServerOptions` - Configuration options for remote server (type)
|
|
90
|
+
|
|
91
|
+
### Authentication Types
|
|
92
|
+
- `Identification` - Base identification interface (type)
|
|
93
|
+
- `ApplicationModeIdentification` - Application mode identification (type)
|
|
94
|
+
- `AnonymousModeIdentification` - Anonymous mode identification (type)
|
|
95
|
+
|
|
96
|
+
> 💡 This package provides remote server functionality for promptbook applications. For the core functionality, see [@promptbook/core](#-packages) or install all packages with `npm i ptbk`
|
|
52
97
|
|
|
53
98
|
|
|
54
99
|
---
|
package/esm/index.es.js
CHANGED
|
@@ -31,7 +31,7 @@ const BOOK_LANGUAGE_VERSION = '1.0.0';
|
|
|
31
31
|
* @generated
|
|
32
32
|
* @see https://github.com/webgptorg/promptbook
|
|
33
33
|
*/
|
|
34
|
-
const PROMPTBOOK_ENGINE_VERSION = '0.101.0-
|
|
34
|
+
const PROMPTBOOK_ENGINE_VERSION = '0.101.0-3';
|
|
35
35
|
/**
|
|
36
36
|
* TODO: string_promptbook_version should be constrained to the all versions of Promptbook engine
|
|
37
37
|
* Note: [💞] Ignore a discrepancy between file name and entity name
|
|
@@ -18,6 +18,10 @@ import type { ChatMessage } from '../book-components/Chat/types/ChatMessage';
|
|
|
18
18
|
import type { ChatParticipant } from '../book-components/Chat/types/ChatParticipant';
|
|
19
19
|
import { renderMarkdown } from '../book-components/Chat/utils/renderMarkdown';
|
|
20
20
|
import { isMarkdownContent } from '../book-components/Chat/utils/renderMarkdown';
|
|
21
|
+
import { ArrowIcon } from '../book-components/icons/ArrowIcon';
|
|
22
|
+
import { ResetIcon } from '../book-components/icons/ResetIcon';
|
|
23
|
+
import { SendIcon } from '../book-components/icons/SendIcon';
|
|
24
|
+
import { TemplateIcon } from '../book-components/icons/TemplateIcon';
|
|
21
25
|
export { BOOK_LANGUAGE_VERSION, PROMPTBOOK_ENGINE_VERSION };
|
|
22
26
|
export type { AvatarChipProps };
|
|
23
27
|
export { AvatarChip };
|
|
@@ -38,3 +42,7 @@ export type { ChatMessage };
|
|
|
38
42
|
export type { ChatParticipant };
|
|
39
43
|
export { renderMarkdown };
|
|
40
44
|
export { isMarkdownContent };
|
|
45
|
+
export { ArrowIcon };
|
|
46
|
+
export { ResetIcon };
|
|
47
|
+
export { SendIcon };
|
|
48
|
+
export { TemplateIcon };
|
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
import type { ChatProps } from './ChatProps';
|
|
2
|
-
/**
|
|
3
|
-
* @deprecated use `isComplete` instead
|
|
4
|
-
* @private util of `<Chat />`
|
|
5
|
-
*/
|
|
6
|
-
export declare const LOADING_INTERACTIVE_IMAGE = "Loading...";
|
|
7
2
|
/**
|
|
8
3
|
* Renders a chat with messages and input for new messages
|
|
9
4
|
*
|
|
@@ -23,10 +23,16 @@ export type ChatProps = {
|
|
|
23
23
|
* Called when user sends a message
|
|
24
24
|
*
|
|
25
25
|
* Note: You must handle the message yourself and add it to the `messages` array
|
|
26
|
+
*
|
|
27
|
+
* - When set, the send textarea and button will be shown
|
|
28
|
+
* - When undefined, the chat has no input and is read-only showing only the messages
|
|
26
29
|
*/
|
|
27
|
-
onMessage(messageContent: string): Promisable<void>;
|
|
30
|
+
onMessage?(messageContent: string): Promisable<void>;
|
|
28
31
|
/**
|
|
29
|
-
* Optional callback
|
|
32
|
+
* Optional callback
|
|
33
|
+
*
|
|
34
|
+
* - When set, button for resetting chat will be shown
|
|
35
|
+
* - When undefined, no reset button will be shown
|
|
30
36
|
*/
|
|
31
37
|
onReset?(): Promisable<void>;
|
|
32
38
|
/**
|
|
@@ -113,4 +119,24 @@ export type ChatProps = {
|
|
|
113
119
|
* Keys should match ChatMessage.from values (e.g., 'USER', 'AGENT_{id}', etc.)
|
|
114
120
|
*/
|
|
115
121
|
readonly participants?: ReadonlyArray<ChatParticipant>;
|
|
122
|
+
/**
|
|
123
|
+
* Optional callback for handling user feedback on messages
|
|
124
|
+
* When provided, star rating buttons (1-5 stars) will be displayed next to each message
|
|
125
|
+
*
|
|
126
|
+
* @param feedback - Object containing the feedback data
|
|
127
|
+
* @param feedback.message - The message being rated
|
|
128
|
+
* @param feedback.rating - Star rating from 1 to 5
|
|
129
|
+
* @param feedback.textRating - Optional text feedback/note from user
|
|
130
|
+
* @param feedback.chatThread - Complete chat thread as string
|
|
131
|
+
* @param feedback.expectedAnswer - Optional expected answer provided by user
|
|
132
|
+
* @param feedback.url - Current page URL where feedback was given
|
|
133
|
+
*/
|
|
134
|
+
onFeedback?(feedback: {
|
|
135
|
+
message: ChatMessage;
|
|
136
|
+
rating: number;
|
|
137
|
+
textRating: string;
|
|
138
|
+
chatThread: string;
|
|
139
|
+
expectedAnswer: string | null;
|
|
140
|
+
url: string;
|
|
141
|
+
}): Promisable<void>;
|
|
116
142
|
};
|
|
@@ -15,7 +15,7 @@ export declare const BOOK_LANGUAGE_VERSION: string_semantic_version;
|
|
|
15
15
|
export declare const PROMPTBOOK_ENGINE_VERSION: string_promptbook_version;
|
|
16
16
|
/**
|
|
17
17
|
* Represents the version string of the Promptbook engine.
|
|
18
|
-
* It follows semantic versioning (e.g., `0.101.0-
|
|
18
|
+
* It follows semantic versioning (e.g., `0.101.0-2`).
|
|
19
19
|
*
|
|
20
20
|
* @generated
|
|
21
21
|
*/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@promptbook/remote-server",
|
|
3
|
-
"version": "0.101.0-
|
|
3
|
+
"version": "0.101.0-3",
|
|
4
4
|
"description": "Promptbook: Run AI apps in plain human language across multiple models and platforms",
|
|
5
5
|
"private": false,
|
|
6
6
|
"sideEffects": false,
|
|
@@ -95,7 +95,7 @@
|
|
|
95
95
|
"module": "./esm/index.es.js",
|
|
96
96
|
"typings": "./esm/typings/src/_packages/remote-server.index.d.ts",
|
|
97
97
|
"peerDependencies": {
|
|
98
|
-
"@promptbook/core": "0.101.0-
|
|
98
|
+
"@promptbook/core": "0.101.0-3"
|
|
99
99
|
},
|
|
100
100
|
"dependencies": {
|
|
101
101
|
"colors": "1.4.0",
|
package/umd/index.umd.js
CHANGED
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
* @generated
|
|
48
48
|
* @see https://github.com/webgptorg/promptbook
|
|
49
49
|
*/
|
|
50
|
-
const PROMPTBOOK_ENGINE_VERSION = '0.101.0-
|
|
50
|
+
const PROMPTBOOK_ENGINE_VERSION = '0.101.0-3';
|
|
51
51
|
/**
|
|
52
52
|
* TODO: string_promptbook_version should be constrained to the all versions of Promptbook engine
|
|
53
53
|
* Note: [💞] Ignore a discrepancy between file name and entity name
|