Skip to content

Commit cc3232e

Browse files
author
Chris Park
committed
text-embedding
- Added text_embedding example - Added textEmbedding js endpoint module
1 parent 0c6f2a0 commit cc3232e

File tree

2 files changed

+94
-0
lines changed

2 files changed

+94
-0
lines changed

examples/text_embedding.js

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
"use strict";
2+
3+
var Api = require("../lib/Api");
4+
var ArgumentParser = require("argparse").ArgumentParser;
5+
6+
var parser = new ArgumentParser({
7+
addHelp: true,
8+
description: "Get the text embedding from a piece of text"
9+
});
10+
parser.addArgument(["--key"], {help: "Rosette API key", required: true});
11+
parser.addArgument(["--url"], {help: "Rosette API alt-url", required: false});
12+
var args = parser.parseArgs();
13+
14+
var api = new Api(args.key, args.url);
15+
var endpoint = "text-embedding";
16+
var embeddings_data = 'Cambridge, Massachusetts'
17+
18+
api.parameters.content = embeddings_data;
19+
api.rosette(endpoint, function(err, res){
20+
if(err){
21+
console.log(err);
22+
} else {
23+
console.log(JSON.stringify(res, null, 2));
24+
}
25+
});

lib/textEmbedding.js

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
/**
2+
* Rosette API.
3+
*
4+
* @copyright 2014-2015 Basis Technology Corporation.
5+
*
6+
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
7+
* with the License. You may obtain a copy of the License at
8+
* @license http://www.apache.org/licenses/LICENSE-2.0
9+
*
10+
* Unless required by applicable law or agreed to in writing, software distributed under the License is
11+
* distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
* See the License for the specific language governing permissions and limitations under the License.
13+
**/
14+
"use strict";
15+
16+
var URL = require("url");
17+
18+
var rosetteConstants = require("./rosetteConstants");
19+
var RosetteException = require("./rosetteExceptions");
20+
var rosetteRequest = require("./rosetteRequest");
21+
22+
/**
23+
* @class
24+
*
25+
* @copyright 2014-2015 Basis Technology Corporation.
26+
* @license http://www.apache.org/licenses/LICENSE-2.0
27+
*/
28+
function textEmbedding() {
29+
30+
};
31+
32+
/**
33+
* Makes an HTTP request to the specified Rosette API endpoint and returns the result
34+
* @param {string} parameters - The Rosette API endpoint parameters
35+
* @param {string} userKey - The Rosette API user access key
36+
* @param {string} serviceURL - The base service URL to be used to access the Rosette API
37+
* @param {function} callback - Callback function to be exectuted after the function to which it is passed is complete
38+
*/
39+
entities.prototype.getResults = function(parameters, userKey, protocol, serviceURL, callback) {
40+
41+
if (parameters.documentFile != null) {
42+
parameters.loadFile(parameters.loadParams().documentFile, parameters, userKey, protocol, serviceURL, "text-embedding", callback);
43+
}
44+
45+
46+
47+
} else {
48+
49+
// validate parameters
50+
if (parameters.loadParams().content == null && parameters.loadParams().contentUri == null) {
51+
return callback(new RosetteException("badArgument", "Must supply one of Content or ContentUri", "bad arguments"));
52+
} else if (parameters.loadParams().content != null && parameters.loadParams().contentUri != null) {
53+
return callback(new RosetteException("badArgument", "Cannot supply both Content and ContentUri", "bad arguments"));
54+
} else {
55+
// configure URL
56+
if (parameters.loadParams().linked == true) {
57+
urlParts = URL.parse(serviceURL + "text-embedding");
58+
}
59+
60+
61+
var req = new rosetteRequest();
62+
req.makeRequest('POST', userKey, protocol, urlParts, parameters, callback);
63+
64+
}
65+
}
66+
67+
};
68+
69+
module.exports = textEmbedding;

0 commit comments

Comments
 (0)