ਕੀ ਤੁਸੀਂ ਚਾਹੁੰਦੇ ਹੋ ਕਿ AI ਸਮਾਂਤਰ (parallel) ਕੰਮ ਕਰੇ? ਪਹਿਲਾਂ ਹਰੇਕ ਨੂੰ ਆਪਣਾ ਵੱਖਰਾ ਵਰਕਸਪੇਸ ਦਿਓ

ਇੱਕ ਪ੍ਰੋਜੈਕਟ 'ਤੇ ਕਈ AI agents ਨੂੰ ਚਲਾਉਣਾ ਮੁਸ਼ਕਲ ਹੈ।

ਜੇਕਰ ਤੁਸੀਂ ਕਈ agents ਨੂੰ ਇੱਕੋ ਫੋਲਡਰ ਤੱਕ ਪਹੁੰਚ ਦਿੰਦੇ ਹੋ, ਤਾਂ ਉਹ ਤੁਹਾਡੀਆਂ ਫਾਈਲਾਂ ਨੂੰ overwrite ਕਰ ਦੇਣਗੇ। ਉਹ ਤੁਹਾਡੇ ਪ੍ਰੋਜੈਕਟ ਦੀ ਸਥਿਤੀ (state) ਨੂੰ ਖਰਾਬ ਕਰ ਦੇਣਗੇ। ਅੰਤ ਵਿੱਚ ਤੁਹਾਡੇ ਕੋਲ ਸਿਰਫ਼ ਇੱਕ ਖਰਾਬ ਹਾਲਤ ਬਚੇਗੀ।

ਤੁਹਾਨੂੰ isolation (ਵੱਖਰੇਕਰਨ) ਦੀ ਲੋੜ ਹੈ।

AI ਨੂੰ ਸਮਾਂਤਰ ਵਰਤਣ ਦੇ ਦੋ ਤਰੀਕੇ ਹਨ:

  • Read-only ਕੰਮ: ਇੱਕ agent logs ਪੜ੍ਹਦਾ ਹੈ ਜਦੋਂ ਕਿ ਦੂਜਾ docs ਪੜ੍ਹਦਾ ਹੈ। ਉਹ ਇੱਕ ਹੀ workspace ਸਾਂਝਾ ਕਰ ਸਕਦੇ ਹਨ।
  • Write ਕੰਮ: ਕਈ agents code ਨੂੰ edit ਕਰਦੇ ਹਨ। ਉਹਨਾਂ ਕੋਲ ਵੱਖਰੇ workspaces ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ।

ਮੈਂ ਇਸ ਨੂੰ ਹੱਲ ਕਰਨ ਲਈ ਵੱਖਰੇ ਫੋਲਡਰ clones ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ। ਇਹ disk space ਦੀ ਘਾਟ ਕਾਰਨ ਅਸਫਲ ਰਿਹਾ। ਬਹੁਤ ਸਾਰੀਆਂ dependencies ਵਾਲੇ ਵੱਡੇ ਪ੍ਰੋਜੈਕਟ ਕਈ gigabytes ਜਗ੍ਹਾ ਲੈਂਦੇ ਹਨ। ਉਹਨਾਂ ਨੂੰ ਕਈ ਵਾਰ clone ਕਰਨਾ storage ਬਰਬਾਦ ਕਰਦਾ ਹੈ।

ਮੈਂ git worktree ਦੀ ਵਰਤੋਂ ਕਰਨੀ ਸ਼ੁਰੂ ਕਰ ਦਿੱਤੀ।

Git worktree ਤੁਹਾਨੂੰ ਇੱਕ repository ਲਈ ਕਈ working directories ਰੱਖਣ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ। ਉਹ ਸਾਰੇ ਇੱਕੋ .git history ਸਾਂਝੀ ਕਰਦੇ ਹਨ। ਇਹ disk space ਬਚਾਉਂਦਾ ਹੈ ਅਤੇ ਸਭ ਕੁਝ ਸੰਗਠਿਤ ਰੱਖਦਾ ਹੈ।

AI ਦੇ ਨਾਲ ਇਸਦੀ ਵਰਤੋਂ ਕਰਨ ਦਾ ਤਰੀਕਾ ਇੱਥੇ ਦਿੱਤਾ ਗਿਆ ਹੈ:

  1. Subagent parallelism: AI ਨੂੰ ਸਮਾਂਤਰ ਕੰਮ ਕਰਨ ਲਈ ਕਹੋ। ਇਹ ਆਪਣੇ ਆਪ ਆਪਣਾ worktree ਬਣਾ ਸਕਦਾ ਹੈ।

  2. Manual parallelism: ਜੇਕਰ ਤੁਸੀਂ ਖੁਦ ਕਈ AI terminals ਖੋਲ੍ਹਦੇ ਹੋ, ਤਾਂ AI ਨੂੰ ਦੂਜਿਆਂ ਬਾਰੇ ਪਤਾ ਨਹੀਂ ਹੁੰਦਾ। ਤੁਹਾਨੂੰ ਇਸਨੂੰ ਦੱਸਣਾ ਪਵੇਗਾ: "ਕੋਈ ਹੋਰ AI ਇਸ directory ਨੂੰ edit ਕਰ ਰਿਹਾ ਹੈ। Worktree mode ਵਿੱਚ ਕੰਮ ਕਰੋ।"

ਵਰਕਫਲੋ ਇਹਨਾਂ ਕਦਮਾਂ ਦੀ ਪਾਲਣਾ ਕਰਦਾ ਹੈ:

  • ਕੰਮਾਂ ਨੂੰ ਸੁਤੰਤਰ ਹਿੱਸਿਆਂ ਵਿੱਚ ਵੰਡੋ।
  • ਹਰੇਕ ਹਿੱਸੇ ਨੂੰ ਇੱਕ ਵਿਲੱਖਣ worktree ਅਸਾਈਨ ਕਰੋ।
  • ਬਦਲਾਅਾਂ ਨੂੰ ਇੱਕ-ਇੱਕ ਕਰਕੇ ਮੁੱਖ branch ਵਿੱਚ ਮਰਜ (merge) ਕਰਨ ਲਈ ਇੱਕ lead agent ਦੀ ਵਰਤੋਂ ਕਰੋ।
  • ਹਰ ਮਰਜ ਤੋਂ ਬਾਅਦ code ਦੀ ਜਾਂਚ ਕਰੋ।
  • ਕੰਮ ਪੂਰਾ ਹੋਣ ਤੋਂ ਬਾਅਦ worktree ਨੂੰ ਡਿਲੀਟ ਕਰ ਦਿਓ।

ਸਫਾਈ (Cleanup) ਬਹੁਤ ਜ਼ਰੂਰੀ ਹੈ। ਭੁੱਲੇ ਹੋਏ worktrees ਤੁਹਾਡੀ disk space ਖਤਮ ਕਰ ਦਿੰਦੇ ਹਨ। ਮੈਂ ਆਪਣੇ AI instructions ਵਿੱਚ ਇੱਕ ਨਿਯਮ ਜੋੜਿਆ ਹੈ: worktree ਨੂੰ ਡਿਲੀਟ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਇਹ ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਸਾਰੇ commits ਮੁੱਖ branch ਵਿੱਚ ਹਨ। ਇਹ ਕੰਮ ਗੁਆਉਣ ਤੋਂ ਬਚਾਉਂਦਾ ਹੈ।

ਛੋਟੇ ਕੰਮਾਂ ਲਈ worktrees ਦੀ ਵਰਤੋਂ ਨਾ ਕਰੋ। ਜੇਕਰ ਤੁਸੀਂ ਸਿਰਫ਼ ਇੱਕ ਫਾਈਲ ਬਦਲਦੇ ਹੋ, ਤਾਂ ਇੱਕ ਹੀ workspace ਵਿੱਚ ਰਹੋ। ਜਟਿਲ (complex) ਫੀਚਰਾਂ ਲਈ worktrees ਦੀ ਵਰਤੋਂ ਕਰੋ।

ਇੱਕ ਨਿਯਮ ਉਹੀ ਰਹਿੰਦਾ ਹੈ: ਕਦੇ ਵੀ ਸਿੱਧਾ trunk 'ਤੇ ਕੰਮ ਨਾ ਕਰੋ। ਹਮੇਸ਼ਾ ਇੱਕ ਨਵੀਂ branch ਤੋਂ ਸ਼ੁਰੂ ਕਰੋ। ਇਹ ਤੁਹਾਡੇ ਮੁੱਖ code ਨੂੰ ਸਾਫ਼ ਅਤੇ ਸੁਰੱਖਿਅਤ ਰੱਖਦਾ ਹੈ।

Git worktree ਇੱਕ ਪੁਰਾਣਾ ਟੂਲ ਹੈ। ਪਰ ਸਮਾਂਤਰ AI workflows ਲਈ, ਇਹ ਇੱਕ ਸੰਪੂਰਨ ਹੱਲ ਹੈ।

ਕੀ ਤੁਸੀਂ ਜਾਣਨਾ ਚਾਹੁੰਦੇ ਹੋ ਕਿ AI ਸਾਨੂੰ ਦਿਨ ਦੇ ਅੰਤ ਵਿੱਚ ਥਕਾਵਟ ਮਹਿਸੂਸ ਕਰਨ ਤੋਂ ਕਿਉਂ ਨਹੀਂ ਰੋਕਦਾ? ਮੈਨੂੰ ਕੁਮੈਂਟਸ ਵਿੱਚ ਦੱਸੋ।

Source: https://dev.to/kanfu-panda/want-ai-to-work-in-parallel-first-give-each-one-its-own-workspace-40ch

Optional learning community: https://t.me/GyaanSetuAi