ਏਜੰਟ ਲੂਪ ਲਾਗਤ: ਤੁਹਾਡੇ ਪ੍ਰਤੀ-ਕਾਲ ਕੋਟੇ ਤੋਂ 11 ਗੁਣਾ ਵੱਧ
ਜ਼ਿਆਦਾਤਰ ਟੀਮਾਂ AI ਏਜੰਟਾਂ ਲਈ ਬਜਟ ਇੱਕ ਸਿੰਗਲ ਕਾਲ ਦੀ ਲਾਗਤ ਦੇਖ ਕੇ ਬਣਾਉਂਦੀਆਂ ਹਨ। ਉਹ ਮਿਲੀਅਨ ਟੋਕਨਾਂ ਦੀ ਕੀਮਤ ਦੇਖਦੇ ਹਨ ਅਤੇ ਇੱਕ ਐਕਸ਼ਨ ਦੀ ਲਾਗਤ ਦਾ ਅੰਦਾਜ਼ਾ ਲਗਾਉਂਦੇ ਹਨ। ਇਹ ਤਰੀਕਾ ਗਲਤ ਹੈ।
ਇੱਕ ਏਜੰਟ ਲੂਪ ਦੀ ਲਾਗਤ ਇੱਕ ਕਾਲ ਦੇ ਬਰਾਬਰ ਨਹੀਂ ਹੁੰਦੀ। ਇਸਦੀ ਲਾਗਤ ਕਿਤੇ ਜ਼ਿਆਦਾ ਹੁੰਦੀ ਹੈ।
ਇਸਦਾ ਕਾਰਨ ਸਧਾਰਨ ਹੈ। ਹਰ ਵਾਰ ਜਦੋਂ ਇੱਕ ਏਜੰਟ ਟੂਲ ਕਾਲ (tool call) ਕਰਦਾ ਹੈ, ਤਾਂ ਇਹ ਪੂਰਾ ਕੰਟੈਕਸ (context) ਦੁਬਾਰਾ ਭੇਜਦਾ ਹੈ। ਤੁਸੀਂ ਸਿਸਟਮ ਪ੍ਰੋਂਪਟ (system prompt) ਲਈ ਦੁਬਾਰਾ ਭੁਗਤਾਨ ਕਰਦੇ ਹੋ। ਤੁਸੀਂ ਹਰ ਟੂਲ ਦੇ ਵੇਰਵੇ ਲਈ ਦੁਬਾਰਾ ਭੁਗਤਾਨ ਕਰਦੇ ਹੋ। ਤੁਸੀਂ ਗੱਲਬਾਤ ਦੇ ਪੂਰੇ ਇਤਿਹਾਸ ਲਈ ਦੁਬਾਰਾ ਭੁਗਤਾਨ ਕਰਦੇ ਹੋ।
ਜਿਵੇਂ-ਜਿਵੇਂ ਲੂਪ ਜਾਰੀ ਰਹਿੰਦਾ ਹੈ, ਪੇਲੋਡ (payload) ਵਧਦਾ ਜਾਂਦਾ ਹੈ। ਲਾਗਤ ਕੁਡਰਾਟਿਕਲੀ (quadratically) ਵਧਦੀ ਹੈ। ਤੁਸੀਂ ਇੱਕ ਸਿੰਗਲ ਕਾਲ ਲਈ ਭੁਗਤਾਨ ਨਹੀਂ ਕਰਦੇ। ਤੁਸੀਂ ਇੱਕ ਵਧਦੇ ਹੋਏ ਕਰਵ (curve) ਦੇ ਹੇਠਾਂ ਵਾਲੇ ਖੇਤਰ ਲਈ ਭੁਗਤਾਨ ਕਰਦੇ ਹੋ।
ਮੈਂ ਇਸਨੂੰ ਮਾਪਣ ਲਈ ਇੱਕ ਟੂਲ ਬਣਾਇਆ ਹੈ। ਇਹ loop_forecast.py ਨਾਮ ਦੀ ਇੱਕ 40-ਲਾਈਨਾਂ ਵਾਲੀ Python ਸਕ੍ਰਿਪਟ ਹੈ। ਇਹ ਆਫਲਾਈਨ ਹੈ, ਕੀ-ਲੈੱਸ (keyless) ਹੈ, ਅਤੇ ਤੁਹਾਡੇ JSONL traces ਨੂੰ ਪੜ੍ਹਦੀ ਹੈ। ਇਹ ਤੁਹਾਡੇ ਕੋਡ ਨੂੰ ਸ਼ਿਪ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਤੁਹਾਨੂੰ ਅਸਲ ਲਾਗਤ ਦੱਸਦੀ ਹੈ।
ਮੇਰੇ ਟੈਸਟ ਰਨ 'ਤੇ, ਨਤੀਜੇ ਸਪੱਸ਼ਟ ਸਨ:
- ਪ੍ਰਤੀ ਇੰਵੋਕੇਸ਼ਨ (invocation) ਕੋਟ ਕੀਤਾ ਗਿਆ ਖਰਚਾ: $0.20
- ਪ੍ਰਤੀ ਟਾਸਕ ਮਾਪਿਆ ਗਿਆ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਖਰਚਾ: $2.26
- ਅੰਤਰ: 11.29x
ਜੇਕਰ ਤੁਹਾਡਾ ਲੂਪ ਛੋਟਾ ਅਤੇ ਸਰਲ ਹੈ, ਤਾਂ ਟੂਲ ਇੱਕ ਛੋਟਾ ਅੰਤਰ ਦਿਖਾਏਗਾ। ਜੇਕਰ ਤੁਹਾਡਾ ਲੂਪ ਭਾਰੀ ਹੈ, ਤਾਂ ਇਹ ਇੱਕ ਵੱਡਾ ਫਰਕ ਦਿਖਾਏਗਾ। ਤੁਸੀਂ ਇਸਨੂੰ CI ਗੇਟ (CI gate) ਵਜੋਂ ਵਰਤ ਸਕਦੇ ਹੋ। ਜੇਕਰ ਲਾਗਤ ਦਾ ਅੰਤਰ ਬਹੁਤ ਜ਼ਿਆਦਾ ਹੈ, ਤਾਂ ਬਿਲਡ ਫੇਲ ਹੋ ਜਾਵੇਗਾ।
ਇੱਕ ਸਿੰਗਲ ਇਨਫਰੈਂਸ (inference) ਦੇ ਅਧਾਰ 'ਤੇ ਬਜਟ ਬਣਾਉਣਾ ਬੰਦ ਕਰੋ। ਆਪਣੀ ਅਸਲ ਸੰਖਿਆ ਲੱਭਣ ਲਈ ਆਪਣੇ ਖੁਦ ਦੇ traces ਦੀ ਵਰਤੋਂ ਕਰੋ।
ਮੁੱਖ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ:
- ਕਿਸੇ ਨੈੱਟਵਰਕ ਐਕਸੈਸ ਜਾਂ API keys ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ।
- ਸਹੀ ਗਿਣਤੀ ਲਈ
tiktokenਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ। - ਇਹ ਦਿਖਾਉਣ ਲਈ ਕਿ ਲਾਗਤ ਕਿਵੇਂ ਵਧਦੀ ਹੈ, ਇੱਕ ਕਰਵੇਚਰ ਮੈਟ੍ਰਿਕ (curvature metric) (k) ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।
- ਭਰੋਸੇਯੋਗ CI/CD ਲਈ ਡਿਟਰਮਿਨਿਸਟਿਕ (deterministic) ਆਉਟਪੁੱਟ।
ਗਲਤੀ ਯੂਨਿਟ ਦੀ ਉਲਝਣ ਵਿੱਚ ਹੈ। ਇੱਕ ਟਾਸਕ ਇੱਕ ਕਾਲ ਨਹੀਂ ਹੈ। ਇੱਕ ਟਾਸਕ N ਕਾਲਾਂ ਹੈ, ਜਿਸ ਵਿੱਚੋਂ ਹਰ ਇੱਕ 'ਤੇ ਵਧਦਾ ਹੋਇਆ ਟੈਕਸ (tax) ਲੱਗਦਾ ਹੈ।
ਸਰੋਤ: https://dev.to/alex_spinov/agent-loop-cost-11x-your-per-call-quote-in-40-lines-5dfn
ਵਿਕਲਪਿਕ ਲਰਨਿੰਗ ਕਮਿਊਨਿਟੀ: https://t.me/GyaanSetuAi