remix-nlux
Version:
Remix IDE NLUX integration. Remix IDE is the leading IDE for building and deploying smart contracts on Ethereum. NLUX is a JavaScript and React library for building conversational AI experiences.
40 lines (33 loc) • 1.49 kB
text/typescript
import {ChatAdapter, ChatAdapterExtras, StreamingAdapterObserver} from '@nlux/react';
export const myCustomStreamingAdapter: ChatAdapter<string> = {
streamText: (
message: string,
observer: StreamingAdapterObserver,
extras: ChatAdapterExtras,
) => {
console.dir(extras, {depth: 3});
setTimeout(() => {
const messageToStream = 'Lorem stream ipsum **dolor** sit amet, consectetur adipiscing elit. ' +
'Sed non risus. Suspendisse lectus tortor, dignissim sit amet, ' +
'adipiscing nec, ultricies sed, dolor. Cras elementum ultrices diam. ';
const mockTokens = messageToStream.split(' ');
mockTokens.forEach((token) => {
observer.next(token + ' ');
});
observer.complete();
}, 100);
},
};
export const myCustomPromiseAdapter: ChatAdapter<string> = {
batchText(message: string, extras: ChatAdapterExtras): Promise<string> {
console.dir(extras, {depth: 3});
return new Promise((resolve) => {
setTimeout(() => {
const messageToStream = 'Lorem promise ipsum **dolor** sit amet, consectetur adipiscing elit. ' +
'Sed non risus. Suspendisse lectus tortor, dignissim sit amet, ' +
'adipiscing nec, ultricies sed, dolor. Cras elementum ultrices diam. ';
resolve(messageToStream);
}, 100);
});
},
};