codeforequity-at / botium-core

The Selenium for Chatbots - Bots Testing Bots
https://www.botium.ai
MIT License
231 stars 64 forks source link

Unable to do Humanification if "Percentage to Humanify" is set as 100 #393

Closed Sid962 closed 4 years ago

Sid962 commented 5 years ago

I have a test set that consists of 37 convo files and 11 utterance files. I have tried to Humanify my test set by setting the "Percentage to Humanify" as 100 by adding all algorithms and the "Script Output Location" is set to Local Repository. But when I do so, an error is popping up as :

"Test Set cloning failed - Network error: Unexpected token < in JSON at position 0"

But if I set the "Percentage to Humanify" as 50 with all the algorithms, I am able to do humanification. Screenshot

Please find the logs below. nginx_1 | <IP> - - [30/Sep/2019:10:03:49 +0000] "GET /subscriptions HTTP/1.1" 101 27 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36" agent_1 | 2019-09-30T10:03:53.004Z botium-box-worker sending heartbeat ... web_1 | 2019-09-30T10:03:53.006Z botium-box-server-agents agent.heartbeat: {"title":"heartbeat from agent Botium Agent for group Default Group","name":"Botium Agent","group":"Default Group"} web_1 | 2019-09-30T10:04:12.575Z botium-BotDriver Loaded Botium configuration file ./botium.json web_1 | 2019-09-30T10:04:12.576Z botium-BotDriver Changed capability TEMPDIR to "./botiumwork" using environment variables. web_1 | 2019-09-30T10:04:12.577Z botium-BotDriver BuildCompiler: Capabilites: { PROJECTNAME: 'defaultproject', web_1 | TEMPDIR: './botiumwork', web_1 | CLEANUPTEMPDIR: true, web_1 | WAITFORBOTTIMEOUT: 10000, web_1 | SIMULATE_WRITING_SPEED: false, web_1 | DOCKERCOMPOSEPATH: 'docker-compose', web_1 | DOCKERMACHINEPATH: 'docker-machine', web_1 | DOCKERMACHINE: false, web_1 | DOCKERIMAGE: 'node:boron', web_1 | DOCKERUNIQUECONTAINERNAMES: false, web_1 | DOCKERSYSLOGPORT_RANGE: '47100-47299', web_1 | BOT_HEALTH_STATUS: 200, web_1 | SLACK_PUBLISHPORT_RANGE: '46100-46299', web_1 | FACEBOOK_PUBLISHPORT_RANGE: '46300-46499', web_1 | FACEBOOK_SEND_DELIVERY_CONFIRMATION: true, web_1 | BOTFRAMEWORK_PUBLISHPORT_RANGE: '46500-46699', web_1 | BOTFRAMEWORK_WEBHOOK_PORT: 3978, web_1 | BOTFRAMEWORK_WEBHOOK_PATH: 'api/messages', web_1 | BOTFRAMEWORK_CHANNEL_ID: 'facebook', web_1 | SIMPLEREST_PING_RETRIES: 6, web_1 | SIMPLEREST_PING_TIMEOUT: 10000, web_1 | SIMPLEREST_PING_VERB: 'GET', web_1 | SIMPLEREST_METHOD: 'GET', web_1 | WEBSPEECH_SERVER_PORT: 46050, web_1 | WEBSPEECH_LANGUAGE: 'en-US', web_1 | WEBSPEECH_CLOSEBROWSER: true, web_1 | SCRIPTING_TXT_EOL: '\n', web_1 | SCRIPTING_XLSX_EOL_SPLIT: '\r', web_1 | SCRIPTING_XLSX_EOL_WRITE: '\r\n', web_1 | SCRIPTING_XLSX_STARTROW: 2, web_1 | SCRIPTING_XLSX_STARTCOL: 1, web_1 | SCRIPTING_NORMALIZE_TEXT: false, web_1 | SCRIPTING_ENABLE_MEMORY: false, web_1 | SCRIPTING_MATCHING_MODE: 'includeLowerCase', web_1 | SCRIPTING_UTTEXPANSION_MODE: 'all', web_1 | SCRIPTING_UTTEXPANSION_RANDOM_COUNT: 1, web_1 | SCRIPTING_MEMORYEXPANSION_KEEP_ORIG: false, web_1 | RETRY_USERSAYS_ONERROR_REGEXP: [], web_1 | RETRY_USERSAYS_NUMRETRIES: 1, web_1 | RETRY_USERSAYS_FACTOR: 1, web_1 | RETRY_USERSAYS_MINTIMEOUT: 1000, web_1 | ASSERTERS: [], web_1 | LOGIC_HOOKS: [], web_1 | USER_INPUTS: [] } web_1 | 2019-09-30T10:04:12.586Z botium-ScriptingProvider Using matching mode: includeLowerCase web_1 | 2019-09-30T10:04:12.587Z botium-asserterUtils Loaded Default asserter - [ 'BUTTONS', web_1 | 'MEDIA', web_1 | 'PAUSE_ASSERTER', web_1 | 'ENTITIES', web_1 | 'ENTITY_VALUES', web_1 | 'INTENT', web_1 | 'INTENT_CONFIDENCE' ] web_1 | 2019-09-30T10:04:12.587Z botium-asserterUtils Loaded Default logic hook - [ 'PAUSE', web_1 | 'WAITFORBOT', web_1 | 'SET_SCRIPTING_MEMORY', web_1 | 'CLEAR_SCRIPTING_MEMORY', web_1 | 'INCLUDE' ] web_1 | 2019-09-30T10:04:12.588Z botium-asserterUtils Loaded Default user input - [ 'BUTTON', 'MEDIA', 'FORM' ] web_1 | duplicate utterance : <helllo> created by [[{"metadata":{"id":"Case sensitivity"}},{"metadata":{"id":"Duplicate space"}},{"metadata":{"id":"Emojis"}},{"metadata":{"id":"Enter instead of space"}},{"metadata":{"id":"Missing punctuation mark"}},{"metadata":{"id":"Double character"}},{"metadata":{"id":"Mishit"}},{"metadata":{"id":"Homophones"}},{"metadata":{"id":"Missing character"}},{"metadata":{"id":"Mixing character"}},{"metadata":{"id":"qwertz vs qwerty keyboard"}},{"metadata":{"id":"Shift characters"}},{"metadata":{"id":"Sausage fingers"}}]] web_1 | duplicate utterance : <helo> created by [[{"metadata":{"id":"Case sensitivity"}},{"metadata":{"id":"Duplicate space"}},{"metadata":{"id":"Emojis"}},{"metadata":{"id":"Enter instead of space"}},{"metadata":{"id":"Missing punctuation mark"}},{"metadata":{"id":"Double character"}},{"metadata":{"id":"Mishit"}},{"metadata":{"id":"Homophones"}},{"metadata":{"id":"Missing character"}},{"metadata":{"id":"Mixing character"}},{"metadata":{"id":"qwertz vs qwerty keyboard"}},{"metadata":{"id":"Shift characters"}},{"metadata":{"id":"Sausage fingers"}}]] web_1 | duplicate utterance : <myself john, a doctor, my phone number is 9855648798> created by [[{"metadata":{"id":"Case sensitivity"}},{"metadata":{"id":"Duplicate space"}},{"metadata":{"id":"Emojis"}},{"metadata":{"id":"Enter instead of space"}},{"metadata":{"id":"Missing punctuation mark"}},{"metadata":{"id":"Double character"}},{"metadata":{"id":"Mishit"}},{"metadata":{"id":"Homophones"}},{"metadata":{"id":"Missing character"}},{"metadata":{"id":"Mixing character"}},{"metadata":{"id":"qwertz vs qwerty keyboard"}},{"metadata":{"id":"Shift characters"}},{"metadata":{"id":"Sausage fingers"}}]] web_1 | duplicate utterance : <this is john, i am an engineer and my number is 9856653298> created by [[{"metadata":{"id":"Case sensitivity"}},{"metadata":{"id":"Duplicate space"}},{"metadata":{"id":"Emojis"}},{"metadata":{"id":"Enter instead of space"}},{"metadata":{"id":"Missing punctuation mark"}},{"metadata":{"id":"Double character"}},{"metadata":{"id":"Mishit"}},{"metadata":{"id":"Homophones"}},{"metadata":{"id":"Missing character"}},{"metadata":{"id":"Mixing character"}},{"metadata":{"id":"qwertz vs qwerty keyboard"}},{"metadata":{"id":"Shift characters"}},{"metadata":{"id":"Sausage fingers"}}]] web_1 | duplicate utterance : <the patient took Ibuprofen at 50 mg/day and is currently suffering from severe headaches and nausea> created by [[{"metadata":{"id":"Case sensitivity"}},{"metadata":{"id":"Duplicate space"}},{"metadata":{"id":"Emojis"}},{"metadata":{"id":"Enter instead of space"}},{"metadata":{"id":"Missing punctuation mark"}},{"metadata":{"id":"Double character"}},{"metadata":{"id":"Mishit"}},{"metadata":{"id":"Homophones"}},{"metadata":{"id":"Missing character"}},{"metadata":{"id":"Mixing character"}},{"metadata":{"id":"qwertz vs qwerty keyboard"}},{"metadata":{"id":"Shift characters"}},{"metadata":{"id":"Sausage fingers"}}]] nginx_1 | 10.208.20.94 - - [30/Sep/2019:10:04:13 +0000] "GET /subscriptions HTTP/1.1" 499 0 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36" web_1 | FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory web_1 | web_1 | <--- Last few GCs ---> web_1 | web_1 | [140:0x564ddb6adf40] 467893 ms: Mark-sweep 1401.4 (1428.9) -> 1401.4 (1429.9) MB, 1436.0 / 0.0 ms (average mu = 0.097, current mu = 0.003) allocation failure scavenge might not succeed web_1 | [140:0x564ddb6adf40] 469337 ms: Mark-sweep 1402.4 (1429.9) -> 1402.4 (1431.4) MB, 1441.1 / 0.0 ms (average mu = 0.051, current mu = 0.002) allocation failure scavenge might not succeed web_1 | web_1 | web_1 | <--- JS stacktrace ---> web_1 | web_1 | ==== JS stack trace ========================================= web_1 | web_1 | 0: ExitFrame [pc: 0x1ff94ed4fc5d] web_1 | 1: StubFrame [pc: 0x1ff94ed50fca] web_1 | Security context: 0x3d6d1c61d971 <JSObject> web_1 | 2: execute [0x3b6a92375d59] [/app/server/dist/botium-box-server.js:~1] [pc=0x1ff94f1a2b04](this=0x3b6a92339b61 <Object map = 0x8958d2bbb41>,0x0eebfaf6bb01 <String[404]: Adverse reaction to erythromycin severe vomiting. for 1 year patient was prescribed Bisoprolol 1.25mg/day. Flucloxacillin 250mg one capsule 4 times/... web_1 | web_1 | web_1 | Writing Node.js report to file: report.20190930.100433.140.001.json web_1 | Node.js report completed agent_1 | 2019-09-30T10:04:53.037Z botium-box-worker sending heartbeat ... nginx_1 | 2019/09/30 10:04:53 [error] 8#8: *7434 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: <IP>, server: , request: "GET /subscriptions HTTP/1.1", upstream: "<URL>", host: "<URL>" nginx_1 | 10.208.20.94 - - [30/Sep/2019:10:04:53 +0000] "GET /subscriptions HTTP/1.1" 502 559 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36" nginx_1 | 2019/09/30 10:04:53 [error] 8#8: *7428 upstream prematurely closed connection while reading response header from upstream, client: <IP>, server: , request: "POST /graphql HTTP/1.1", upstream: "<URL>", host: "<URL>", referrer: "<URL>" nginx_1 | 10.222.5.70 - - [30/Sep/2019:10:04:53 +0000] "POST /graphql HTTP/1.1" 502 559 "<URL>" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36" nginx_1 | 10.222.5.70 - - [30/Sep/2019:10:04:53 +0000] "GET /subscriptions HTTP/1.1" 101 27 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36" web_1 | Aborted (core dumped) web_1 | npm ERR! code ELIFECYCLE web_1 | npm ERR! errno 134 web_1 | npm ERR! botium-box-server@1.0.0 start:dist:node dist/botium-box-server.js web_1 | npm ERR! Exit status 134 web_1 | npm ERR! web_1 | npm ERR! Failed at the botium-box-server@1.0.0 start:dist script. web_1 | npm ERR! This is probably not a problem with npm. There is likely additional logging output above. web_1 | web_1 | npm ERR! A complete log of this run can be found in: web_1 | npm ERR! /root/.npm/_logs/2019-09-30T10_04_53_681Z-debug.log prisma_1 | Warning: Management API authentication is disabled. To protect your management server you should provide one (not both) of the environment variables 'CLUSTER_PUBLIC_KEY' (asymmetric, deprecated soon) or 'PRISMA_MANAGEMENT_API_JWT_SECRET' (symmetric JWT). prisma_1 | Warning: Management API authentication is disabled. To protect your management server you should provide one (not both) of the environment variables 'CLUSTER_PUBLIC_KEY' (asymmetric, deprecated soon) or 'PRISMA_MANAGEMENT_API_JWT_SECRET' (symmetric JWT). nginx_1 | 2019/09/30 10:05:06 [error] 8#8: *7437 connect() failed (111: Connection refused) while connecting to upstream, client: <IP>, server: , request: "GET /subscriptions HTTP/1.1", upstream: "<URL>", host: "<URL>" nginx_1 | 10.208.20.94 - - [30/Sep/2019:10:05:06 +0000] "GET /subscriptions HTTP/1.1" 502 559 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36" nginx_1 | 2019/09/30 10:05:17 [error] 8#8: *7441 connect() failed (111: Connection refused) while connecting to upstream, client: <IP>, server: , request: "GET /subscriptions HTTP/1.1", upstream: "<URL>", host: "<URL>" nginx_1 | 10.222.5.70 - - [30/Sep/2019:10:05:17 +0000] "GET /subscriptions HTTP/1.1" 502 559 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36" redis_1 | 1:M 30 Sep 2019 10:05:19.034 * 100 changes in 300 seconds. Saving... redis_1 | 1:M 30 Sep 2019 10:05:19.034 * Background saving started by pid 1124 redis_1 | 1124:C 30 Sep 2019 10:05:19.067 * DB saved on disk redis_1 | 1124:C 30 Sep 2019 10:05:19.067 * RDB: 0 MB of memory used by copy-on-write redis_1 | 1:M 30 Sep 2019 10:05:19.135 * Background saving terminated with success

codeforequity-at commented 5 years ago

working on it.

codeforequity-at commented 5 years ago

I suspect the "Enter instead of space" humanificator to be the source of the problem. Can you please try to run it again at 100 percent, with this humanificator removed from the list ?

Sid962 commented 5 years ago

Still I am facing the same error

codeforequity-at commented 5 years ago

So, I can see from your logs that there is it is running out of memory.

web_1 | FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory

How many lines are there in your utterances files, and is there enough memory available on your Botium Box server ? (I just tested humanification on a test set with 30.000 utterances on my workstation without any troubles.)

Sid962 commented 5 years ago

There is near to 50% memory left in the server :( There is only 3 lines in each utterance file

codeforequity-at commented 5 years ago

Could you please share your test set (export as ZIP), by email ?

Sid962 commented 5 years ago

Yeah, I will be sending the test sets by mail

codeforequity-at commented 5 years ago

The Case Sensitivity algorithm is defect. Please deselect it, than it will work.

codeforequity-at commented 4 years ago

Fixed with Botium Box 2.0