code: def shard(items, num_shards):
      """Split items into num_shards groups."""
      sharded = []
      num_per_shard = len(items) // num_shards
      start = 0
      for _ in range(num_shards):
          sharded.append(items[start : start + num_per_shard])
          start += num_per_shard
  
      remainder = len(items) % num_shards
      start = len(items) - remainder
      for i in range(remainder):
          sharded[i].append(items[start + i])
  
      assert sum([len(fs) for fs in sharded]) == len(items)
      return sharded
  
imports: import datetime
  import json
  import math
  import multiprocessing
  import os
  import random
  import asyncio
  import aiohttp
  import tensorflow
  from tensor2tensor.data_generators.wikisum import html
  from tensor2tensor.data_generators.wikisum import utils
label_desc: Use image node_id 2 for calling a global function with example usage: shard(items, num_shards) and returns: sharded