import tensorflow as tf

            print("*" * 80)
            print(f"Step: {step}, loss: {loss_v}, embedding_vector:\n{emb_vector_v}")
            sok_results.append(emb_vector_v)

        sess.run(save_op)

    name = list()
    for embedding_layer in sok_sparse_demo.embedding_layers:
        name.append(embedding_layer.embedding_variable.m_var_name)
    
    return sok_results, name

def get_tf_results(args, init_tensors, *random_samples):
    graph = tf.Graph()
    with graph.as_default():
        tf_sparse_demo = TFDemo(vocabulary_size=args.max_vocabulary_size_per_gpu * args.gpu_num,
                                embedding_vec_size=args.embedding_vec_size,
                                combiner=args.combiner,
                                slot_num=args.slot_num,
                                max_nnz=args.max_nnz,
                                use_hashtable=args.use_hashtable,
                                num_of_dense_layers=0)
        
        optimizer = utils.get_dense_optimizer(args.optimizer)(learning_rate=0.1)

        loss_fn = tf.keras.losses.BinaryCrossentropy(from_logits=True)
