Digital worker skill overlap mitigation
A method, a structure, and a computer system for mitigating digital worker skill overlap. Exemplary embodiments may include detecting a similarity between a first skill and a second skill assigned to a digital worker, generating a disambiguation question to disambiguate the first skill from the second skill, and disambiguating the first skill from the second skill based on an answer to the disambiguation question.
1 . A computer-implemented method for mitigating digital worker skill overlap, the method comprising:
in response to one of a first skill or a second skill being newly added to a digital worker that is configured to perform automated tasks by invoking skills in response to skill invocation requests:
detecting a similarity between the first skill and the second skill assigned to the digital worker by determining whether a similarity between at least one of a description, utterance, entity, input, and output corresponding to the first skill and the second skill exceeds a threshold;
generating, using a templatized model, a disambiguation question to disambiguate the first skill from the second skill for use when a subsequent invocation matches both the first skill and the second skill;
disambiguating the first skill from the second skill based on an answer to the disambiguation question by interpreting the answer in view of the disambiguation question to determine which one of the first skill or the second skill corresponds to the answer and recording an association between the answer and the determined one of the first skill or the second skill for use in selecting a skill when the subsequent invocation matches both the first skill and the second skill;
generating, using a trained large language model, one or more paraphrases of the disambiguation question;
storing the disambiguation question and the one or more paraphrases of the disambiguation question as disambiguation artifacts in a skill specification associated with at least one of the first skill or the second skill in a skill repository used by the digital worker; and
in response to receiving the subsequent invocation that matches both the first skill and the second skill, invoking one of the first skill or the second skill based on the disambiguation artifacts in the skill specification.
2 . The computer-implemented method of claim 1 , further comprising:
prompting at least one of the disambiguation question or the one or more paraphrases of the disambiguation question from the disambiguation artifacts stored in the skill specification in response to at least one of the first skill or the second skill being subsequently invoked and a determination that a current invocation matches both the first skill and the second skill.
3 . The computer-implemented method of claim 1 , wherein the generating the disambiguation question further comprises:
identifying one or more exclusive entities that are exclusive to the first skill or the second skill based on entities defined in respective skill specifications of the first skill and the second skill; and
generating the disambiguation question based on the one or more exclusive entities such that the disambiguation question explicitly references at least one of the one or more exclusive entities.
4 . The computer-implemented method of claim 3 , wherein the identifying the one or more exclusive entities further comprises:
applying an exclusive or (XOR) logic operation to entities associated with the first skill and the second skill as defined in the respective skill specifications.
5 . The computer-implemented method of claim 1 , wherein the generating the disambiguation question further comprises:
receiving a natural language explanation differentiating the first skill from the second skill;
identifying a key phrase within the natural language explanation; and
generating the disambiguation question based on the key phrase such that the disambiguation question embodies, in an interrogative form, a differentiation between the first skill and the second skill expressed in the natural language explanation.
6 . The computer-implemented method of claim 5 , wherein the identifying the key phrase further comprises:
generating first embeddings for the natural language explanation and second embeddings for one or more strings within the natural language explanation; and
identifying as the key phrase the one or more strings corresponding to the second embeddings having a shortest distance from the first embeddings of the natural language explanation in an embedding space.
7 . The computer-implemented method of claim 1 , wherein the detecting the similarity between the first skill and the second skill further comprises:
determining whether the similarity between at least one of the description, the utterance, the entity, the input, and the output corresponding to the first skill and the second skill exceed the threshold by computing similarity measures between respective skill specifications of the first skill and the second skill.
8 . A computer program product for mitigating digital worker skill overlap, the computer program product comprising at least one non-transitory computer-readable medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to:
in response to one of a first skill or a second skill being newly added to a digital worker that is configured to perform automated tasks by invoking skills in response to skill invocation requests:
detect a similarity between the first skill and the second skill assigned to the digital worker by determining whether a similarity between at least one of a description, utterance, entity, input, and output corresponding to the first skill and the second skill exceeds a threshold;
generate, using a templatized model, a disambiguation question to disambiguate the first skill from the second skill for use when a subsequent invocation is determined to match both the first skill and the second skill;
disambiguate the first skill from the second skill based on an answer to the disambiguation question by interpreting the answer in view of the disambiguation question to determine which one of the first skill or the second skill corresponds to the answer and recording an association between the answer and the determined one of the first skill or the second skill for use in selecting a skill when the subsequent invocation matches both the first skill and the second skill;
generate, using a trained large language model, one or more paraphrases of the disambiguation question;
store the disambiguation question and the one or more paraphrases of the disambiguation question as disambiguation artifacts in a skill specification associated with at least one of the first skill or the second skill in a skill repository used by the digital worker; and
in response to receiving the subsequent invocation that matches both the first skill and the second skill, invoke one of the first skill or the second skill based on the disambiguation artifacts in the skill specification.
9 . The computer program product of claim 8 , wherein the program instructions are further executable by the processor to cause the processor to:
prompt at least one of the disambiguation question or the one or more paraphrases of the disambiguation question from the disambiguation artifacts stored in the skill specification in response to at least one of the first skill or the second skill being subsequently invoked and a determination that a current invocation matches both the first skill and the second skill.
10 . The computer program product of claim 8 , wherein the generating the disambiguation question further comprises:
identifying one or more exclusive entities that are exclusive to the first skill or the second skill based on entities defined in respective skill specifications of the first skill and the second skill; and
generating the disambiguation question based on the one or more exclusive entities such that the disambiguation question explicitly references at least one of the one or more exclusive entities.
11 . The computer program product of claim 10 , wherein the identifying the one or more exclusive entities further comprises:
applying an exclusive or (XOR) logic operation to entities associated with the first skill and the second skill as defined in the respective skill specification.
12 . The computer program product of claim 8 , wherein the generating the disambiguation question further comprises:
receiving a natural language explanation differentiating the first skill from the second skill;
identifying a key phrase within the natural language explanation; and
generating the disambiguation question based on the key phrase such that the disambiguation question embodies, in an interrogative form, a differentiation between the first skill and the second skill expressed in the natural language explanation.
13 . The computer program product of claim 12 , wherein the identifying the key phrase further comprises:
generating first embeddings for the natural language explanation and second embeddings for one or more strings within the natural language explanation; and
identifying as the key phrase the one or more strings corresponding to the second embeddings having a shortest distance from the first embeddings of the natural language explanation in an embedding space.
14 . The computer program product of claim 8 , wherein the detecting the similarity between the first skill and the second skill further comprises:
determining whether the similarity between at least one of the description, the utterance, the entity, the input, and the output corresponding to the first skill and the second skill exceed the threshold by computing similarity measures between respective skill specifications of the first skill and the second skill.
15 . A system comprising:
a memory configured to store computer-executable instructions; and
a processor configured to execute at least one of the computer-executable instructions that:
in response to one of a first skill or a second skill being newly added to a digital worker that is configured to perform automated tasks by invoking skills in response to skill invocation requests:
detects a similarity between the first skill and the second skill assigned to the digital worker by determining whether a similarity between at least one of a description, utterance, entity, input, and output corresponding to the first skill and the second skill exceeds a threshold;
generates, using a templatized model, a disambiguation question to disambiguate the first skill from the second skill for use when a subsequent invocation is determined to match both the first skill and the second skill;
disambiguates the first skill from the second skill based on an answer to the disambiguation question by interpreting the answer in view of the disambiguation question to determine which one of the first skill or the second skill corresponds to the answer and recording an association between the answer and the determined one of the first skill or the second skill for use in selecting a skill when the subsequent invocation matches both the first skill and the second skill;
generates, using a trained large language model, one or more paraphrases of the disambiguation question;
stores the disambiguation question and the one or more paraphrases of the disambiguation question as disambiguation artifacts in a skill specification associated with at least one of the first skill or the second skill in a skill repository used by the digital worker; and
in response to receiving the subsequent invocation that matches both the first skill and the second skill, invokes one of the first skill or the second skill based on the disambiguation artifacts in the skill specification.
16 . The system of claim 15 , wherein the at least one of the computer-executable instructions further:
prompts at least one of the disambiguation question or the one or more paraphrases of the disambiguation question from the disambiguation artifacts stored in the skill specification in response to at least one of the first skill or the second skill being subsequently invoked and a determination that a current invocation matches both the first skill and the second skill.
17 . The system of claim 15 , wherein the generating the disambiguation question further comprises:
identifying one or more exclusive entities that are exclusive to the first skill or the second skill based on entities defined in respective skill specifications of the first skill and the second skill; and
generating the disambiguation question based on the one or more exclusive entities such that the disambiguation question explicitly references at least one of the one or more exclusive entities.
18 . The system of claim 17 , wherein the identifying the one or more exclusive entities further comprises:
applying an exclusive or (XOR) logic operation to entities associated with the first skill and the second skill as defined in the respective skill specifications.
19 . The system of claim 15 , wherein the generating the disambiguation question further comprises:
receiving a natural language explanation differentiating the first skill from the second skill;
identifying a key phrase within the natural language explanation; and
generating the disambiguation question based on the key phrase such that the disambiguation question embodies, in an interrogative form, a differentiation between the first skill and the second skill expressed in the natural language explanation.
20 . The system of claim 19 , wherein the identifying the key phrase further comprises:
generating first embeddings for the natural language explanation and second embeddings for one or more strings within the natural language explanation; and
identifying as the key phrase the one or more strings corresponding to the second embeddings having a shortest distance from the first embeddings of the natural language explanation in an embedding space.