diff options
Diffstat (limited to 'src/server/index.ts')
-rw-r--r-- | src/server/index.ts | 40 |
1 files changed, 37 insertions, 3 deletions
diff --git a/src/server/index.ts b/src/server/index.ts index ddd909479..2a669f147 100644 --- a/src/server/index.ts +++ b/src/server/index.ts @@ -40,6 +40,8 @@ import * as Archiver from 'archiver'; var AdmZip = require('adm-zip'); import * as YoutubeApi from "./apis/youtube/youtubeApiSample"; import { Response } from 'express-serve-static-core'; +import { DocComponent } from '../client/views/DocComponent'; +import { Recommender } from "./Recommender"; import { GoogleApiServerUtils } from "./apis/google/GoogleApiServerUtils"; const MongoStore = require('connect-mongo')(session); const mongoose = require('mongoose'); @@ -53,9 +55,9 @@ import { DashUploadUtils } from './DashUploadUtils'; import { BatchedArray, TimeUnit } from 'array-batcher'; import { ParsedPDF } from "./PdfTypes"; import { reject } from 'bluebird'; -import { ExifData } from 'exif'; import { Result } from '../client/northstar/model/idea/idea'; import RouteSubscriber from './RouteSubscriber'; +import { IBM_Recommender } from '../client/apis/IBM_Recommender'; const download = (url: string, dest: fs.PathLike) => request.get(url).pipe(fs.createWriteStream(dest)); let youtubeApiKey: string; @@ -671,7 +673,8 @@ addSecureRoute({ const ServicesApiKeyMap = new Map<string, string | undefined>([ ["face", process.env.FACE], ["vision", process.env.VISION], - ["handwriting", process.env.HANDWRITING] + ["handwriting", process.env.HANDWRITING], + ["text", process.env.TEXT] ]); addSecureRoute({ @@ -774,6 +777,12 @@ addSecureRoute({ addSecureRoute({ method: Method.POST, + subscribers: "/IBMAnalysis", + onValidation: async (_user, req, res) => res.send(await IBM_Recommender.analyze(req.body)) +}); + +addSecureRoute({ + method: Method.POST, subscribers: RouteStore.dataUriToImage, onValidation: (_user, req, res) => { const uri = req.body.uri; @@ -849,10 +858,35 @@ app.use(RouteStore.corsProxy, (req, res) => { }).pipe(res); }); +//// + +let recommender = new Recommender(); +recommender.testModel(); + +app.post("/recommender", async (req, res) => { + let keyphrases = req.body.keyphrases; + let wordvecs = await recommender.vectorize(keyphrases); + let embedding: Float32Array = new Float32Array(); + if (wordvecs && wordvecs.dataSync()) { + embedding = wordvecs.dataSync() as Float32Array; + } + res.send(embedding); +}); + + +///// + +app.get(RouteStore.delete, (req, res) => { + if (release) { + res.send("no"); + return; + } + deleteFields().then(() => res.redirect(RouteStore.home)); +}); addSecureRoute({ method: Method.GET, subscribers: RouteStore.delete, - onValidation: (_user, _req, res) => { + onValidation: (user, _req, res) => { if (release) { return _permission_denied(res, deletionPermissionError); } |