83 Commits

Author SHA1 Message Date
Stypox
bc09e6238a
[Search] Fix specificity in retry interaction plan 2025-10-09 00:59:42 +02:00
Stypox
51054c4906
Put min/compile/targetSdk versions in catalog 2025-10-08 15:12:48 +02:00
Stypox
c0382ac7a6
Fix deprecated kotlinOptions 2025-10-08 11:11:44 +02:00
Stypox
98651bfe3f
Update all libraries 2025-10-08 11:01:46 +02:00
Stypox
47817e41fc
Replace getNextSkills() with InteractionPlan
This gives more flexibility and allows the skills to control the conversation flow better
2025-02-27 15:36:26 +01:00
Stypox
ee0865bab1
Smarter text fallback: ask to repeat and trigger microphone
Of course, it's possible that the speech that Dicio is hearing is not directed at it, so it doesn't make sense to retry indefinitely: if the user's second attempt is also something that Dicio can't understand, this implementation omits the "Could you repeat?" part of the response and stops re-enabling the microphone until the user successfully performs another interaction.
2025-02-27 14:37:08 +01:00
Stypox
81c7aa547c
Merge pull request #287 from papjul/media_control
Implement media control
2025-02-21 13:14:12 +01:00
Stypox
571ea76fd6
Fix tests 2025-02-21 11:43:18 +01:00
Stypox
103c1192f1
Handle multiple types of permissions (possibly extendible) 2025-02-20 20:18:11 +01:00
Julien Papasian
d8aea62b44 Update to SDK 35 + Update dependencies 2025-02-19 17:46:03 +01:00
Julien Papasian
49a56d89a6 Implement media control 2025-02-19 13:46:08 +01:00
Stypox
906c54e829
Remove deprecated package= in skill manifest 2024-07-10 15:50:33 +02:00
Stypox
763852d76f
Set java version from libs.versions.toml 2024-07-10 15:50:33 +02:00
Stypox
57075482f1
Use harmonic mean for StandardScore.scoreIn01Range
This avoids any single word to match against the weather skill's sentence "weather .where." with 100% user matched and 50% reference matched, and still yield 0.75 as final score that is not interpreted as "could not understand" since the threshold for that is 0.7
2024-06-26 01:03:09 +02:00
Stypox
e01378142c
Fix Skill interface docs 2024-06-20 18:56:53 +02:00
Stypox
4f233e0aa9
Rename ScoreResult to InputData 2024-06-20 18:47:49 +02:00
Stypox
8271795987
Add MemToEndTest 2024-06-05 14:59:39 +02:00
Stypox
f7db4159e4
Add CompositeConstructTest 2024-06-05 12:47:20 +02:00
Stypox
d2b35e5865
Add OrConstructTest 2024-06-05 12:15:40 +02:00
Stypox
ed4922bc04
Add shouldNotMatchAnything util to ConstructTestUtil 2024-06-05 11:52:12 +02:00
Stypox
790ae1078a
Avoid capturing only whitespace in CapturingConstruct 2024-06-05 11:21:32 +02:00
Stypox
cab38d2c6b
Disable PerformanceTest to save time when benchmarking is not needed 2024-06-05 11:20:58 +02:00
Stypox
27fd14513c
Add CapturingConstructTest and make changes to CapturingConstruct 2024-06-05 11:05:22 +02:00
Stypox
4f5a9af2f9
Add OptionalConstructTest 2024-06-04 22:30:37 +02:00
Stypox
513eecceaa
Add WordConstructTest 2024-06-04 22:24:07 +02:00
Stypox
b0915df929
Add ConstructTestUtil for testing constructs 2024-06-04 22:23:49 +02:00
Stypox
56d32e19d5
Add nfkdNormalizeWord tests 2024-06-04 12:22:16 +02:00
Stypox
a7e9be0a17
Add tests for splitWordsIndices 2024-06-04 12:10:41 +02:00
Stypox
e1098c6e4a
Add TokenizersTest 2024-06-04 12:01:24 +02:00
Stypox
60349aefdc
Rename standard/helper to standard/util 2024-06-04 11:45:03 +02:00
Stypox
d9d89d2012
Compare StandardScore even between different skills 2024-06-04 11:36:51 +02:00
Stypox
0396062298
Rename standard2 to standard 2024-06-03 16:30:59 +02:00
Stypox
d24b6f3c74
Fix tests not compiling after adding sentencesLanguage 2024-06-03 16:13:03 +02:00
Stypox
1924d205c8
Move old "standard" recognizer to test module
It will be kept just to run tests
2024-06-03 16:13:03 +02:00
Stypox
1fc264dd44
Change Skill.score() signature 2024-06-03 16:13:03 +02:00
Stypox
865f79200d
Add toString() to *Construct for easier debugging 2024-06-03 16:13:02 +02:00
Stypox
b2abc6ac3e
Fully implement WordConstruct 2024-06-03 16:13:02 +02:00
Stypox
e1fbab44d4
Use sentencesLanguage to index Sentences map 2024-06-03 16:13:02 +02:00
Stypox
396bc28fd4
Take benchmark after making capturing groups O(n) 2024-06-03 16:10:22 +02:00
Stypox
ded9f491df
Fix CapturingConstruct doing incorrect calculations 2024-06-03 15:59:11 +02:00
Stypox
ff77b6f637
Fix capturing construct wrongly adding refWeight twice 2024-06-03 08:08:48 +02:00
Stypox
f8fa097fc7
[Optimize] Use O(n) time in capturing group, making everything O(n*m)
Where n is the number of letters in the user input, while m is the number of reference constructs to match
2024-06-02 17:39:44 +02:00
Stypox
b5c602addf
Improve spacing of samples and retake latest benchmark 2024-06-02 16:18:16 +02:00
Stypox
b0d3c4b225
Fix BenchmarkRunner reallocating string repeatedly 2024-06-02 15:46:15 +02:00
Stypox
ea4b4894f0
Add benchmarks after optimizing to O(n²) 2024-06-02 15:33:36 +02:00
Stypox
352d80b5e9
[Optimize] Restructure to allow for O(n²) instead of O(n³) 2024-06-02 15:32:43 +02:00
Stypox
eb851ca1bc
Avoid division by zero in scoreIn01Range 2024-06-02 14:51:22 +02:00
Stypox
29daa8962b
Make scoreIn01Range work better alongside old "standard" 2024-06-02 11:19:11 +02:00
Stypox
6824ee0b91
Add benchmarks after adding cache to word constructs 2024-06-01 23:07:30 +02:00
Stypox
0f89b7cee2
[Optimize] Precalculate cache on word constructs 2024-06-01 23:06:31 +02:00