ਹਰ ਕੋਈ AI ਏਜੰਟਾਂ ਦੀ ਇੱਕ ਟੀਮ ਬਣਾਉਣਾ ਚਾਹੁੰਦਾ ਹੈ। ਡੈਮੋ ਬਹੁਤ ਆਕਰਸ਼ਕ ਲੱਗਦੇ ਹਨ। ਇੱਕ ਏਜੰਟ ਖੋਜ ਕਰਦਾ ਹੈ, ਦੂਜਾ ਕੋਡ ਲਿਖਦਾ ਹੈ, ਅਤੇ ਤੀਜਾ ਟੈਸਟ ਚਲਾਉਂਦਾ ਹੈ। ਪਰ ਇਨ੍ਹਾਂ ਵਿੱਚੋਂ ਜ਼ਿਆਦਾਤਰ ਪ੍ਰਣਾਲੀਆਂ ਦਾ ਇੱਕ ਗੰਭੀਰ ਰਾਜ਼ ਸਾਂਝਾ ਹੈ: ਉਹ ਕਮਜ਼ੋਰ ਹਨ। ਉਹ ਪੰਜ ਮਿੰਟ ਦੇ ਡੈਮੋ ਦੌਰਾਨ ਬਹੁਤ ਵਧੀਆ ਕੰਮ ਕਰਦੇ ਹਨ ਪਰ ਅਸਲ ਜਾਂਚ ਦੌਰਾਨ ਟੁੱਟ ਜਾਂਦੇ ਹਨ। ਅਸਫਲਤਾ ਦਾ ਕਾਰਨ ਸ਼ਾਇਦ ਲੈਂਗੂਏਜ ਮਾਡਲ ਦੀ ਤਰਕ ਸ਼ਕਤੀ ਜਾਂ ਸਵਾਰਮ (swarm) ਵਿੱਚ ਏਜੰਟਾਂ ਦੀ ਗਿਣਤੀ ਨਹੀਂ ਹੁੰਦੀ। ਇਹ ਉਹ ਖਾਲੀ ਥਾਂ ਹੈ ਜੋ ਉਹਨਾਂ ਦੇ ਵਿਚਕਾਰ ਹੁੰਦੀ ਹੈ। ਮਲਟੀ-ਏਜੰਟ ਸਿਸਟਮ ਕੋਲੈਬੋਰੇਸ਼ਨ ਪਲੇਨ (collaboration plane) 'ਤੇ ਟੁੱਟ ਜਾਂਦੇ ਹਨ।
ਸੁਪਰਵਾਈਜ਼ਰ ਦਾ ਜਾਲ
ਡਿਫੌਲਟ ਆਰਕੀਟੈਕਚਰ ਬਹੁਤ ਹੀ ਸਰਲ ਲੱਗਦਾ ਹੈ। ਇੱਕ ਸੁਪਰਵਾਈਜ਼ਰ ਏਜੰਟ ਇੱਕ ਟੀਚਾ ਪ੍ਰਾਪਤ ਕਰਦਾ ਹੈ, ਇਸਨੂੰ ਉਪ-ਕਾਰਜਾਂ (subtasks) ਵਿੱਚ ਵੰਡਦਾ ਹੈ, ਅਤੇ ਵਰਕਰ ਏਜੰਟਾਂ ਨੂੰ ਸੌਂਪ ਦਿੰਦਾ ਹੈ। ਵਰਕਰ ਕੰਮ ਕਰਦੇ ਹਨ, ਨਤੀਜੇ ਵਾਪਸ ਕਰਦੇ ਹਨ, ਅਤੇ ਸੁਪਰਵਾਈਜ਼ਰ ਸਭ ਕੁਝ ਇੱਕ ਅੰਤਿਮ ਉੱਤਰ ਵਿੱਚ ਜੋੜ ਦਿੰਦਾ ਹੈ। ਇਹ ਪੈਟਰਨ ਉਦੋਂ ਠੀਕ ਹੈ ਜੇਕਰ ਤੁਸੀਂ ਦਸ ਲੇਖਾਂ ਦਾ ਸਾਰ ਕੱਢ ਰਹੇ ਹੋ, ਆਡੀਓ ਫਾਈਲਾਂ ਨੂੰ ਟ੍ਰਾਂਸਕ੍ਰਾਈਬ ਕਰ ਰਹੇ ਹੋ, ਜਾਂ ਸੌ ਇੱਕੋ ਜਿਹੇ ਵੈੱਬ ਪੇਜਾਂ ਤੋਂ ਡੇਟਾ ਕੱਢ ਰਹੇ ਹੋ। ਇਹ ਕਾਰਜ ਸੁਤੰਤਰ ਹਨ। ਉਹ ਵਾਪਸ ਗੱਲ ਨਹੀਂ ਕਰਦੇ।
ਗੁੰਝਲਦਾਰ ਜਾਂਚ ਵੱਖਰੀ ਹੁੰਦੀ ਹੈ। ਜਦੋਂ ਕੋਈ ਏਜੰਟ ਕੋਈ ਹੈਰਾਨੀਜਨਕ ਖੋਜ ਕਰਦਾ ਹੈ, ਤਾਂ ਕੰਮ ਦੀ ਪੂਰੀ ਦਿਸ਼ਾ ਬਦਲਣ ਦੀ ਲੋੜ ਹੋ ਸਕਦੀ ਹੈ। ਜੇਕਰ ਸਿਸਟਮ ਕੋਲ ਉਸ ਬਦਲਾਅ ਨੂੰ ਸਾਂਝਾ ਕਰਨ ਦਾ ਕੋਈ ਸੰਚਾਲਿਤ ਤਰੀਕਾ ਨਹੀਂ ਹੈ, ਤਾਂ ਦੂਜੇ ਏਜੰਟ ਗਲਤ ਦਿਸ਼ਾ ਵਿੱਚ ਚੱਲਦੇ ਰਹਿੰਦੇ ਹਨ। ਤੁਹਾਨੂੰ ਇੱਕ ਗੱਲਬਾਤ ਦੀ ਬਜਾਏ ਸਮਾਨਾਂਤਰ ਮੋਨੋਲੋਗਸ (parallel monologues) ਦਾ ਸੰਗ੍ਰਹਿ ਮਿਲਦਾ ਹੈ। ਸੁਪਰਵਾਈਜ਼ਰ ਇੱਕ ਕੋਆਰਡੀਨੇਟਰ ਦੀ ਬਜਾਏ ਇੱਕ ਰੁਕਾਵਟ (bottleneck) ਬਣ ਜਾਂਦਾ ਹੈ।
ਜਦੋਂ ਤਾਲਮੇਲ ਫੇਲ ਹੋ ਜਾਂਦਾ ਹੈ ਤਾਂ ਕੀ ਗਾਇਬ ਹੋ ਜਾਂਦਾ ਹੈ
ਜਦੋਂ ਕੋਈ ਜਾਂਚ ਡੂੰਘੀ ਹੁੰਦੀ ਹੈ, ਤਾਂ ਤੁਹਾਨੂੰ ਅੰਤਿਮ ਉੱਤਰ ਤੋਂ ਕਿਤੇ ਵੱਧ ਜਾਣਕਾਰੀ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਤੁਹਾਨੂੰ ਪਤਾ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਕਿ ਕਿਸ ਨੂੰ ਕੀ ਪਤਾ ਸੀ ਅਤੇ ਕਦੋਂ। ਤੁਹਾਨੂੰ ਇਹ ਪਤਾ ਲਗਾਉਣ ਦੀ ਲੋੜ ਹੈ ਕਿ ਕਿਸ ਖੋਜ ਨੇ ਕੰਮ ਦੀ ਦਿਸ਼ਾ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕੀਤਾ। ਤੁਹਾਨੂੰ ਇਹ ਸਮਝਣ ਦੀ ਲੋੜ ਹੈ ਕਿ ਕਿਸੇ ਏਜੰਟ ਨੇ ਦੋ ਘੰਟੇ ਪਹਿਲਾਂ ਆਪਣੀ ਯੋਜਨਾ ਕਿਉਂ ਬਦਲੀ। ਕੋਲੈਬੋਰੇਸ਼ਨ ਪਲੇਨ ਤੋਂ ਬਿਨਾਂ, ਇਹ ਕੁਝ ਵੀ ਦਿਖਾਈ ਨਹੀਂ ਦਿੰਦਾ। ਤੁਹਾਡੇ ਕੋਲ ਲੌਗਸ (logs) ਹੁੰਦੇ ਹਨ। ਲੌਗਸ ਕਾਲਕ੍ਰਮਿਕ ਸ਼ੋਰ (chronological noise) ਹਨ। ਉਹ ਰਿਕਾਰਡ ਕਰਦੇ ਹਨ ਕਿ ਏਜੰਟ C ਨੇ ਅਚਾਨਕ API ਕਾਲਾਂ ਦੀ ਬਜਾਏ ਡੇਟਾਬੇਸ ਟ੍ਰਾਂਜੈਕਸ਼ਨਾਂ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਨਾ ਸ਼ੁਰੂ ਕਰ ਦਿੱਤਾ, ਪਰ ਉਹ ਇਹ ਨਹੀਂ ਦੱਸਦੇ ਕਿ ਕਿਉਂ। ਤੁਸੀਂ ਇਸਨੂੰ ਹੁੰਦੇ ਹੋਏ ਦੇਖ ਸਕਦੇ ਹੋ ਅਤੇ ਅੰਦਾਜ਼ਾ ਲਗਾ ਸਕਦੇ ਹੋ।
ਸੁਰੱਖਿਆ ਘਟਨਾ ਦੀ ਪ੍ਰਤੀਕਿਰਿਆ (security incident response) ਦੀ ਕਲਪਨਾ ਕਰੋ। ਏਜੰਟ A ਸਰਵਰ ਲੌਗਸ ਦੀ ਬਾਰੀਕੀ ਨਾਲ ਜਾਂਚ ਕਰਦਾ ਹੈ ਅਤੇ ਨਤੀਜਾ ਕੱਢਦਾ ਹੈ ਕਿ ਉਲੰਘਣਾ ਉੱਥੇ ਸ਼ੁਰੂ ਨਹੀਂ ਹੋਈ ਸੀ। ਉਹ ਆਪਣਾ ਆਉਟਪੁੱਟ ਸੁਪਰਵਾਈਜ਼ਰ ਨੂੰ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਏਜੰਟ B, ਜਿਸਨੂੰ ਨੈੱਟਵਰਕ ਟ੍ਰੈਫਿਕ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਨ ਲਈ ਨਿਯੁਕਤ ਕੀਤਾ ਗਿਆ ਸੀ, ਉਸ ਨਤੀਜੇ ਨੂੰ ਇੱਕ ਰੱਦ ਕੀਤੀ ਗਈ ਪਰਿਕਲਪਨਾ (rejected hypothesis) ਵਜੋਂ ਕਦੇ ਨਹੀਂ ਦੇਖਦਾ। ਕਿਉਂਕਿ ਇਸਦਾ ਅਸਲ ਕਾਰਜ ਵੇਰਵਾ ਅਜੇ ਵੀ ਸਰਵਰ ਨੂੰ ਮੁੱਖ ਸ਼ੱਕੀ ਮੰਨਦਾ ਹੈ, ਏਜੰਟ B ਉਸੇ ਲੌਗ ਵਿੱਚ ਉਂਗਲੀਆਂ ਦੇ ਨਿਸ਼ਾਨ ਲੱਭਣ ਲਈ ਇੱਕ ਹੋਰ ਚੱਕਰ ਬਰਬਾਦ ਕਰਦਾ ਹੈ। ਸਿਸਟਮ ਇੱਕੋ ਕੰਮ ਲਈ ਦੋ ਵਾਰ ਭੁਗਤਾਨ ਕਰਦਾ ਹੈ ਅਤੇ ਪਹਿਲੀ ਵਾਰ ਤੋਂ ਕੁਝ ਨਹੀਂ ਸਿੱਖਦਾ।
ਕੋਲੈਬੋਰੇਸ਼ਨ ਪਲੇਨ ਮੈਮੋਰੀ ਨਹੀਂ ਹੈ
ਕੋਲੈਬੋਰੇਸ਼ਨ ਪਲੇਨ ਸਿਰਫ਼ ਤੱਥਾਂ ਲਈ ਮੈਮੋਰੀ ਬੱਕਟ ਨਹੀਂ ਹੈ। ਮੈਮੋਰੀ ਜਾਣਕਾਰੀ ਨੂੰ ਸਟੋਰ ਕਰਦੀ ਹੈ। ਕੋਲੈਬੋਰੇਸ਼ਨ ਸਟੇਟ ਚੱਲ ਰਹੇ ਕੰਮ (work in progress) ਨੂੰ ਸਟੋਰ ਕਰਦੀ ਹੈ। ਦਸਤਾਵੇਜ਼ਾਂ ਨਾਲ ਭਰਿਆ ਇੱਕ ਵੈਕਟਰ ਡੇਟਾਬੇਸ ਏਜੰਟ ਨੂੰ ਰੈਫਰੈਂਸ ਸਮੱਗਰੀ ਦਿੰਦਾ ਹੈ। ਇਹ ਏਜੰਟ ਨੂੰ ਇਹ ਨਹੀਂ ਦੱਸਦਾ ਕਿ ਏਜੰਟ X ਇਸ ਸਮੇਂ ਇੱਕ ਅਜਿਹੀ ਪਰਿਕਲਪਨਾ ਦੀ ਜਾਂਚ ਕਰ ਰਿਹਾ ਹੈ ਜੋ ਏਜੰਟ Y ਦੇ ਮੌਜੂਦਾ ਕਾਰਜ ਨੂੰ ਫਾਲਤੂ ਬਣਾ ਦੇਵੇਗੀ। ਮੈਮੋਰੀ ਸਥਿਰ ਸੰਦਰਭ (static context) ਹੈ। ਕੋਲੈਬੋਰੇਸ਼ਨ ਸਟੇਟ ਕਾਰਜ ਦਾ ਲਾਈਵ ਮੈਪ ਹੈ।
ਜੇਕਰ ਤੁਸੀਂ ਇਹਨਾਂ ਦੋਵਾਂ ਵਿੱਚ ਉਲਝ ਜਾਂਦੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਅਜਿਹੇ ਸਿਸਟਮ ਬਣਾਉਂਦੇ ਹੋ ਜੋ ਤੁਹਾਡੀ ਕੰਪਨੀ ਦੀ ਹੈਂਡਬੁੱਕ ਦਾ ਹ
