name: analysis-agentruntime: python3module: agent.pyentrypoint: handlertimeout: 1800 # 30 minutes (in seconds)memory: 2048 # More memory for heavy processing
Long tasks are more likely to fail. Use workspace to save progress:
import jsonimport osdef handler(input_data): documents = input_data.get('documents', []) progress_file = '/workspace/progress.json' # Load previous progress if os.path.exists(progress_file): with open(progress_file) as f: progress = json.load(f) else: progress = {'completed': [], 'results': []} # Process remaining documents for doc in documents: if doc in progress['completed']: continue # Skip already processed result = analyze_document(doc) progress['completed'].append(doc) progress['results'].append(result) # Save progress after each doc with open(progress_file, 'w') as f: json.dump(progress, f) return {'results': progress['results']}
If the task fails, retry it - already-processed documents are skipped.