support whisper instructions (#1198)

* support whisper instructions

* wip

* update speech utils and verb specification
This commit is contained in:
Hoan Luu Huu
2025-05-13 20:44:00 +07:00
committed by GitHub
parent d7884a837a
commit 9585018147
4 changed files with 73 additions and 72 deletions

136
package-lock.json generated
View File

@@ -15,10 +15,10 @@
"@jambonz/http-health-check": "^0.0.1",
"@jambonz/mw-registrar": "^0.2.7",
"@jambonz/realtimedb-helpers": "^0.8.13",
"@jambonz/speech-utils": "^0.2.8",
"@jambonz/speech-utils": "^0.2.9",
"@jambonz/stats-collector": "^0.1.10",
"@jambonz/time-series": "^0.2.13",
"@jambonz/verb-specifications": "^0.0.103",
"@jambonz/verb-specifications": "^0.0.104",
"@modelcontextprotocol/sdk": "^1.9.0",
"@opentelemetry/api": "^1.8.0",
"@opentelemetry/exporter-jaeger": "^1.23.0",
@@ -1467,10 +1467,12 @@
}
},
"node_modules/@jambonz/speech-utils": {
"version": "0.2.8",
"resolved": "https://registry.npmjs.org/@jambonz/speech-utils/-/speech-utils-0.2.8.tgz",
"integrity": "sha512-3MyqNunI3vTYl1np/qyn3b/27dq8Jm8BOC4gARnjMR+40590DAfH3IR1P7gTC2kHbzUMTB8fGY26KLHvmapSSA==",
"version": "0.2.9",
"resolved": "https://registry.npmjs.org/@jambonz/speech-utils/-/speech-utils-0.2.9.tgz",
"integrity": "sha512-3qrgM0htxEI4asUk32WcVDB12MYBETSQYGE+JLKM+1lvDVbHd7bfNFbLzdRZEDandNsdOk8oKd05tOTazjQk7A==",
"license": "MIT",
"dependencies": {
"23": "^0.0.0",
"@aws-sdk/client-polly": "^3.496.0",
"@aws-sdk/client-sts": "^3.496.0",
"@cartesia/cartesia-js": "^2.1.0",
@@ -1483,7 +1485,7 @@
"google-protobuf": "^3.21.2",
"ibm-watson": "^8.0.0",
"microsoft-cognitiveservices-speech-sdk": "1.38.0",
"openai": "^4.25.0",
"openai": "^4.98.0",
"undici": "^7.5.0"
}
},
@@ -1504,9 +1506,9 @@
}
},
"node_modules/@jambonz/verb-specifications": {
"version": "0.0.103",
"resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.103.tgz",
"integrity": "sha512-LwAjG1T1DnUKr8F5s42TDw/fCJD945PV70rfItdQP552gweb1nnxQy9cKtbszDiqhSDUUVRlGhdfCh8N5XSXLQ==",
"version": "0.0.104",
"resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.104.tgz",
"integrity": "sha512-G1LjK6ISujdg0zALudtUvdaPXmvA4FU6x3s8S9MwUbWbFo2WERMUcNOgQAutDZwOMrLH9DnbPL8ZIdnTCKnlkA==",
"license": "MIT",
"dependencies": {
"debug": "^4.3.4",
@@ -2780,7 +2782,9 @@
"license": "MIT"
},
"node_modules/@types/node-fetch": {
"version": "2.6.11",
"version": "2.6.12",
"resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.12.tgz",
"integrity": "sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA==",
"license": "MIT",
"dependencies": {
"@types/node": "*",
@@ -2788,11 +2792,14 @@
}
},
"node_modules/@types/node-fetch/node_modules/form-data": {
"version": "4.0.0",
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.2.tgz",
"integrity": "sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==",
"license": "MIT",
"dependencies": {
"asynckit": "^0.4.0",
"combined-stream": "^1.0.8",
"es-set-tostringtag": "^2.1.0",
"mime-types": "^2.1.12"
},
"engines": {
@@ -2847,6 +2854,12 @@
"version": "21.0.3",
"license": "MIT"
},
"node_modules/23": {
"version": "0.0.0",
"resolved": "https://registry.npmjs.org/23/-/23-0.0.0.tgz",
"integrity": "sha512-uAETf9Okr72trtp1pNXYKhFCTTI1EKGcYMA8gw3jLGhlbaDX+grrNToEWrpt8luxRAvrZWBTvyB5wk3PpNjGQQ==",
"license": "ISC"
},
"node_modules/abort-controller": {
"version": "3.0.0",
"license": "MIT",
@@ -2898,7 +2911,9 @@
}
},
"node_modules/agentkeepalive": {
"version": "4.5.0",
"version": "4.6.0",
"resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.6.0.tgz",
"integrity": "sha512-kja8j7PjmncONqaTsB8fQ+wE2mSU2DJ9D4XKoJ5PFWIdRMa6SLSN1ff4mOr4jCbfRSsxR4keIiySJU0N9T5hIQ==",
"license": "MIT",
"dependencies": {
"humanize-ms": "^1.2.1"
@@ -3131,9 +3146,6 @@
"dev": true,
"license": "MIT"
},
"node_modules/base-64": {
"version": "0.1.0"
},
"node_modules/base64-js": {
"version": "1.5.1",
"funding": [
@@ -3448,13 +3460,6 @@
"url": "https://github.com/chalk/chalk?sponsor=1"
}
},
"node_modules/charenc": {
"version": "0.0.2",
"license": "BSD-3-Clause",
"engines": {
"node": "*"
}
},
"node_modules/cidr-matcher": {
"version": "2.1.1",
"license": "MIT",
@@ -3604,13 +3609,6 @@
"node": ">= 8"
}
},
"node_modules/crypt": {
"version": "0.0.2",
"license": "BSD-3-Clause",
"engines": {
"node": "*"
}
},
"node_modules/d": {
"version": "1.0.1",
"license": "ISC",
@@ -3836,14 +3834,6 @@
"node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
}
},
"node_modules/digest-fetch": {
"version": "1.3.0",
"license": "ISC",
"dependencies": {
"base-64": "^0.1.0",
"md5": "^2.3.0"
}
},
"node_modules/doctrine": {
"version": "3.0.0",
"dev": true,
@@ -4173,13 +4163,15 @@
}
},
"node_modules/es-set-tostringtag": {
"version": "2.0.3",
"dev": true,
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz",
"integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==",
"license": "MIT",
"dependencies": {
"get-intrinsic": "^1.2.4",
"es-errors": "^1.3.0",
"get-intrinsic": "^1.2.6",
"has-tostringtag": "^1.0.2",
"hasown": "^2.0.1"
"hasown": "^2.0.2"
},
"engines": {
"node": ">= 0.4"
@@ -4863,6 +4855,8 @@
},
"node_modules/form-data-encoder": {
"version": "1.7.2",
"resolved": "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.2.tgz",
"integrity": "sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A==",
"license": "MIT"
},
"node_modules/form-urlencoded": {
@@ -4871,6 +4865,8 @@
},
"node_modules/formdata-node": {
"version": "4.4.1",
"resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz",
"integrity": "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==",
"license": "MIT",
"dependencies": {
"node-domexception": "1.0.0",
@@ -4880,13 +4876,6 @@
"node": ">= 12.20"
}
},
"node_modules/formdata-node/node_modules/web-streams-polyfill": {
"version": "4.0.0-beta.3",
"license": "MIT",
"engines": {
"node": ">= 14"
}
},
"node_modules/forwarded": {
"version": "0.2.0",
"license": "MIT",
@@ -5284,7 +5273,6 @@
},
"node_modules/has-tostringtag": {
"version": "1.0.2",
"dev": true,
"license": "MIT",
"dependencies": {
"has-symbols": "^1.0.3"
@@ -5415,6 +5403,8 @@
},
"node_modules/humanize-ms": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz",
"integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==",
"license": "MIT",
"dependencies": {
"ms": "^2.0.0"
@@ -5721,10 +5711,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/is-buffer": {
"version": "1.1.6",
"license": "MIT"
},
"node_modules/is-callable": {
"version": "1.2.7",
"dev": true,
@@ -6468,15 +6454,6 @@
"node": ">= 0.4"
}
},
"node_modules/md5": {
"version": "2.3.0",
"license": "BSD-3-Clause",
"dependencies": {
"charenc": "0.0.2",
"crypt": "0.0.2",
"is-buffer": "~1.1.6"
}
},
"node_modules/media-typer": {
"version": "0.3.0",
"license": "MIT",
@@ -6773,6 +6750,9 @@
},
"node_modules/node-domexception": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz",
"integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==",
"deprecated": "Use your platform's native DOMException instead",
"funding": [
{
"type": "github",
@@ -7048,25 +7028,39 @@
"version": "0.0.2"
},
"node_modules/openai": {
"version": "4.25.0",
"version": "4.98.0",
"resolved": "https://registry.npmjs.org/openai/-/openai-4.98.0.tgz",
"integrity": "sha512-TmDKur1WjxxMPQAtLG5sgBSCJmX7ynTsGmewKzoDwl1fRxtbLOsiR0FA/AOAAtYUmP6azal+MYQuOENfdU+7yg==",
"license": "Apache-2.0",
"dependencies": {
"@types/node": "^18.11.18",
"@types/node-fetch": "^2.6.4",
"abort-controller": "^3.0.0",
"agentkeepalive": "^4.2.1",
"digest-fetch": "^1.3.0",
"form-data-encoder": "1.7.2",
"formdata-node": "^4.3.2",
"node-fetch": "^2.6.7",
"web-streams-polyfill": "^3.2.1"
"node-fetch": "^2.6.7"
},
"bin": {
"openai": "bin/cli"
},
"peerDependencies": {
"ws": "^8.18.0",
"zod": "^3.23.8"
},
"peerDependenciesMeta": {
"ws": {
"optional": true
},
"zod": {
"optional": true
}
}
},
"node_modules/openai/node_modules/@types/node": {
"version": "18.19.8",
"version": "18.19.100",
"resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.100.tgz",
"integrity": "sha512-ojmMP8SZBKprc3qGrGk8Ujpo80AXkrP7G2tOT4VWr5jlr5DHjsJF+emXJz+Wm0glmy4Js62oKMdZZ6B9Y+tEcA==",
"license": "MIT",
"dependencies": {
"undici-types": "~5.26.4"
@@ -8723,6 +8717,8 @@
},
"node_modules/undici-types": {
"version": "5.26.5",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz",
"integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==",
"license": "MIT"
},
"node_modules/universalify": {
@@ -8882,10 +8878,12 @@
}
},
"node_modules/web-streams-polyfill": {
"version": "3.3.2",
"version": "4.0.0-beta.3",
"resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz",
"integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==",
"license": "MIT",
"engines": {
"node": ">= 8"
"node": ">= 14"
}
},
"node_modules/webidl-conversions": {