Products

OpenAI Extension

Enhance your Intrasheets application by integrating the ChatGPT API directly into your spreadsheet data grids. This extension enables automated content generation, intelligent response handling, and advanced data analysis, allowing front-end queries to connect to the API through the backend and deliver real-time, AI-powered insights to users.

Documentation

Methods

Method Description
=PROMPT() Creates dynamic prompts by combining values or text fragments, enabling customized interactions with AI models for specific use cases.

Example

Generate Marketing Copy

Suppose you have a list of products and their attributes and need to generate marketing copy for each item quickly.

A1: "Product Name"
B1: "Product Description"
C1: "Marketing Copy"
A2: "Smartwatch"
B2: "Fitness tracking, sleep monitoring, 48-hour battery life"

In C2, you would enter:

=PROMPT("Write an engaging marketing copy for a product named ", A2, " with these features: ", B2)

Installation

This extension requires Intrasheets Premium and OpenAI API account.

Using NPM

$ npm install @jspreadsheet/openai

Using a CDN

<script src="https://cdn.jsdelivr.net/npm/@jspreadsheet/openai/dist/index.min.js"></script>

Configuration

Intrasheets Server enables secure requests to the ChatGPT API using each client’s API credentials. When a user executes a formula on the front end, the Intrasheets Server processes it and broadcasts the response to all connected users. With caching enabled, results are saved to the cell, minimizing unnecessary requests.

Installation

Load the OpenAI extension and add it as an extension to the Intrasheets Server, as shown below.

const server = require('@jspreadsheet/server');
const openai = require('@jspreadsheet/openai');

// Connect to the Open AI API
openai({ apiKey: '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' });

// You can get this information on your Jspreadsheet Account
const license = {
    clientId: 'your-client-id',
    licenseKey: 'your-license'
}

// Private server that runs on your servers (100% private)
server({
    config: {
        cors: {
            origin: "*"
        },
    },
    port: 3000,
    error: function(e) {
        // Your implementation
    },
    auth: async function(socket) {
        // Your implementation
    },
    load: async function(guid) {
        // Your implementation
    },
    create: async function(guid, config) {
        // Your implementation
    },
    destroy: async function(guid) {
        // Your implementation
    },
    change: async function(guid, changes) {
        // Your implementation
    },
    license: license,
    extensions: { openai },
});

Examples

Translating Column to French

This example demonstrates the utilization of PROMPT to translate an entire column.

[
    ['Hello', '=PROMPT("Translate ",A1," to French")'],
    ['Bye', '=PROMPT("Translate ",A2," to French")'],
    ['Thanks', '=PROMPT("Translate ",A3," to French")'],
    ['Sorry', '=PROMPT("Translate ",A4," to French")'],
]

Combining Words Semantics

This example demonstrates the utilization of PROMPT to effectively combine word semantics.

['Flower', 'Bee', `=PROMPT(A1," and ",B1," combined result in this word:")`]