kenken999 commited on
Commit
725b4b7
1 Parent(s): 7b60264
workspace/api/.gitignore → AutoPrompt/Makefile RENAMED
File without changes
AutoPrompt/babyagi.py DELETED
@@ -1,677 +0,0 @@
1
- #!/usr/bin/env python3
2
- from dotenv import load_dotenv
3
-
4
- # Load default environment variables (.env)
5
- load_dotenv()
6
-
7
- import os
8
- import time
9
- import logging
10
- from collections import deque
11
- from typing import Dict, List
12
- import importlib
13
- import openai
14
- import chromadb
15
- import tiktoken as tiktoken
16
- from chromadb.utils.embedding_functions import OpenAIEmbeddingFunction
17
- from chromadb.api.types import Documents, EmbeddingFunction, Embeddings
18
- import re
19
- from groq import Groq
20
-
21
- # default opt out of chromadb telemetry.
22
- from chromadb.config import Settings
23
- from transformers import AutoTokenizer, AutoModel
24
- import torch
25
- import numpy
26
-
27
- # モデル名を指定
28
- model_name = "sentence-transformers/all-MiniLM-L6-v2"
29
-
30
- # トークナイザーとモデルをロード
31
- tokenizer = AutoTokenizer.from_pretrained(model_name)
32
- model = AutoModel.from_pretrained(model_name)
33
- client = chromadb.Client(Settings(anonymized_telemetry=False))
34
-
35
- # Engine configuration
36
-
37
- # Model: GPT, LLAMA, HUMAN, etc.
38
- LLM_MODEL = os.getenv("LLM_MODEL", os.getenv("OPENAI_API_MODEL", "gpt-3.5-turbo")).lower()
39
-
40
- # API Keys
41
- OPENAI_API_KEY = os.getenv("api_key", "")
42
- if not (LLM_MODEL.startswith("llama") or LLM_MODEL.startswith("human")):
43
- assert OPENAI_API_KEY, "\033[91m\033[1m" + "OPENAI_API_KEY environment variable is missing from .env" + "\033[0m\033[0m"
44
-
45
- # Table config
46
- RESULTS_STORE_NAME = os.getenv("RESULTS_STORE_NAME", os.getenv("TABLE_NAME", ""))
47
- assert RESULTS_STORE_NAME, "\033[91m\033[1m" + "RESULTS_STORE_NAME environment variable is missing from .env" + "\033[0m\033[0m"
48
-
49
- # Run configuration
50
- INSTANCE_NAME = os.getenv("INSTANCE_NAME", os.getenv("BABY_NAME", "BabyAGI"))
51
- COOPERATIVE_MODE = "none"
52
- JOIN_EXISTING_OBJECTIVE = False
53
-
54
- # Goal configuration
55
- #OBJECTIVE = os.getenv("OBJECTIVE", "")
56
- OBJECTIVE = "ボットの性能をよくする方法 日本語で説明"
57
- INITIAL_TASK = os.getenv("INITIAL_TASK", os.getenv("FIRST_TASK", ""))
58
-
59
- # Model configuration
60
- OPENAI_TEMPERATURE = float(os.getenv("OPENAI_TEMPERATURE", 0.0))
61
-
62
-
63
- # Extensions support begin
64
-
65
- def can_import(module_name):
66
- try:
67
- importlib.import_module(module_name)
68
- return True
69
- except ImportError:
70
- return False
71
-
72
-
73
- DOTENV_EXTENSIONS = os.getenv("DOTENV_EXTENSIONS", "").split(" ")
74
-
75
- # Command line arguments extension
76
- # Can override any of the above environment variables
77
- ENABLE_COMMAND_LINE_ARGS = (
78
- os.getenv("ENABLE_COMMAND_LINE_ARGS", "false").lower() == "true"
79
- )
80
- if ENABLE_COMMAND_LINE_ARGS:
81
- if can_import("extensions.argparseext"):
82
- from extensions.argparseext import parse_arguments
83
-
84
- OBJECTIVE, INITIAL_TASK, LLM_MODEL, DOTENV_EXTENSIONS, INSTANCE_NAME, COOPERATIVE_MODE, JOIN_EXISTING_OBJECTIVE = parse_arguments()
85
-
86
- # Human mode extension
87
- # Gives human input to babyagi
88
- if LLM_MODEL.startswith("human"):
89
- if can_import("extensions.human_mode"):
90
- from extensions.human_mode import user_input_await
91
-
92
- # Load additional environment variables for enabled extensions
93
- # TODO: This might override the following command line arguments as well:
94
- # OBJECTIVE, INITIAL_TASK, LLM_MODEL, INSTANCE_NAME, COOPERATIVE_MODE, JOIN_EXISTING_OBJECTIVE
95
- if DOTENV_EXTENSIONS:
96
- if can_import("extensions.dotenvext"):
97
- from extensions.dotenvext import load_dotenv_extensions
98
-
99
- load_dotenv_extensions(DOTENV_EXTENSIONS)
100
-
101
- # TODO: There's still work to be done here to enable people to get
102
- # defaults from dotenv extensions, but also provide command line
103
- # arguments to override them
104
-
105
- # Extensions support end
106
-
107
- print("\033[95m\033[1m" + "\n*****CONFIGURATION*****\n" + "\033[0m\033[0m")
108
- print(f"Name : {INSTANCE_NAME}")
109
- print(f"Mode : {'alone' if COOPERATIVE_MODE in ['n', 'none'] else 'local' if COOPERATIVE_MODE in ['l', 'local'] else 'distributed' if COOPERATIVE_MODE in ['d', 'distributed'] else 'undefined'}")
110
- print(f"LLM : {LLM_MODEL}")
111
-
112
-
113
- # Check if we know what we are doing
114
- assert OBJECTIVE, "\033[91m\033[1m" + "OBJECTIVE environment variable is missing from .env" + "\033[0m\033[0m"
115
- assert INITIAL_TASK, "\033[91m\033[1m" + "INITIAL_TASK environment variable is missing from .env" + "\033[0m\033[0m"
116
-
117
- LLAMA_MODEL_PATH = os.getenv("LLAMA_MODEL_PATH", "models/llama-13B/ggml-model.bin")
118
- if LLM_MODEL.startswith("llama"):
119
- if can_import("llama_cpp"):
120
- from llama_cpp import Llama
121
-
122
- print(f"LLAMA : {LLAMA_MODEL_PATH}" + "\n")
123
- assert os.path.exists(LLAMA_MODEL_PATH), "\033[91m\033[1m" + f"Model can't be found." + "\033[0m\033[0m"
124
-
125
- CTX_MAX = 1024
126
- LLAMA_THREADS_NUM = int(os.getenv("LLAMA_THREADS_NUM", 8))
127
-
128
- print('Initialize model for evaluation')
129
- llm = Llama(
130
- model_path=LLAMA_MODEL_PATH,
131
- n_ctx=CTX_MAX,
132
- n_threads=LLAMA_THREADS_NUM,
133
- n_batch=512,
134
- use_mlock=False,
135
- )
136
-
137
- print('\nInitialize model for embedding')
138
- llm_embed = Llama(
139
- model_path=LLAMA_MODEL_PATH,
140
- n_ctx=CTX_MAX,
141
- n_threads=LLAMA_THREADS_NUM,
142
- n_batch=512,
143
- embedding=True,
144
- use_mlock=False,
145
- )
146
-
147
- print(
148
- "\033[91m\033[1m"
149
- + "\n*****USING LLAMA.CPP. POTENTIALLY SLOW.*****"
150
- + "\033[0m\033[0m"
151
- )
152
- else:
153
- print(
154
- "\033[91m\033[1m"
155
- + "\nLlama LLM requires package llama-cpp. Falling back to GPT-3.5-turbo."
156
- + "\033[0m\033[0m"
157
- )
158
- LLM_MODEL = "gpt-3.5-turbo"
159
-
160
- if LLM_MODEL.startswith("gpt-4"):
161
- print(
162
- "\033[91m\033[1m"
163
- + "\n*****USING GPT-4. POTENTIALLY EXPENSIVE. MONITOR YOUR COSTS*****"
164
- + "\033[0m\033[0m"
165
- )
166
-
167
- if LLM_MODEL.startswith("human"):
168
- print(
169
- "\033[91m\033[1m"
170
- + "\n*****USING HUMAN INPUT*****"
171
- + "\033[0m\033[0m"
172
- )
173
-
174
- print("\033[94m\033[1m" + "\n*****OBJECTIVE*****\n" + "\033[0m\033[0m")
175
- print(f"{OBJECTIVE}")
176
-
177
- if not JOIN_EXISTING_OBJECTIVE:
178
- print("\033[93m\033[1m" + "\nInitial task:" + "\033[0m\033[0m" + f" {INITIAL_TASK}")
179
- else:
180
- print("\033[93m\033[1m" + f"\nJoining to help the objective" + "\033[0m\033[0m")
181
-
182
- # Configure OpenAI
183
- openai.api_key = os.getenv("api_key")
184
-
185
-
186
- # Llama embedding function
187
- class LlamaEmbeddingFunction(EmbeddingFunction):
188
- def __init__(self):
189
- return
190
-
191
-
192
- def __call__(self, texts: Documents) -> Embeddings:
193
- embeddings = []
194
- for t in texts:
195
- e = llm_embed.embed(t)
196
- embeddings.append(e)
197
- return embeddings
198
-
199
-
200
- # Results storage using local ChromaDB
201
- class DefaultResultsStorage:
202
- def __init__(self):
203
- logging.getLogger('chromadb').setLevel(logging.ERROR)
204
- # Create Chroma collection
205
- chroma_persist_dir = "chroma"
206
- chroma_client = chromadb.PersistentClient(
207
- settings=chromadb.config.Settings(
208
- persist_directory=chroma_persist_dir,
209
- )
210
- )
211
-
212
- metric = "cosine"
213
- if LLM_MODEL.startswith("llama"):
214
- embedding_function = LlamaEmbeddingFunction()
215
- else:
216
- embedding_function = OpenAIEmbeddingFunction(api_key=OPENAI_API_KEY)
217
- self.collection = chroma_client.get_or_create_collection(
218
- name=RESULTS_STORE_NAME,
219
- metadata={"hnsw:space": metric},
220
- embedding_function=embedding_function,
221
- )
222
-
223
-
224
-
225
- def add(self, task: Dict, result: str, result_id: str):
226
-
227
- # Break the function if LLM_MODEL starts with "human" (case-insensitive)
228
- if LLM_MODEL.startswith("human"):
229
- return
230
- return
231
- #from langchain_community.chat_models import ChatOpenAI
232
- # Continue with the rest of the function
233
- #llm_embed = ChatOpenAI(model_name="lama3-70b-8192",
234
- # openai_api_key="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",
235
- # openai_api_base="https://api.groq.com/openai/v1",
236
- # )
237
- #import openai
238
- #openai.api_key = "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"
239
- #openai.api_base = "https://api.groq.com/openai/v1"
240
- #response = openai.embeddings.create(input=result,
241
- # model="lama3-70b-8192",
242
- #
243
- inputs = tokenizer(result, return_tensors="pt")
244
- outputs = model(**inputs)
245
- # [CLS]トークンの出力を取得
246
- embeddings = outputs.last_hidden_state[:,0,:].squeeze().detach().cpu().numpy().tolist()
247
- #cls_embedding = outputs.last_hidden_state[:, 0, :].squeeze()
248
- # テンソルが CPU 上にあることを確認し、NumPy 配列に変換
249
- #cls_embedding_np = cls_embedding.detach().cpu().numpy()
250
-
251
- #embeddings = response['data'][0]['embedding']
252
- embeddings = llm_embed.embed(result) if LLM_MODEL.startswith("llama") else None
253
- if (
254
- len(self.collection.get(ids=[result_id], include=[])["ids"]) > 0
255
- ): # Check if the result already exists
256
- self.collection.update(
257
- ids=result_id,
258
- embeddings=embeddings,
259
- documents=result,
260
- metadatas={"task": task["task_name"], "result": result},
261
- )
262
- else:
263
- self.collection.add(
264
- ids=result_id,
265
- embeddings=embeddings,
266
- documents=result,
267
- metadatas={"task": task["task_name"], "result": result},
268
- )
269
-
270
- def query(self, query: str, top_results_num: int) -> List[dict]:
271
- count: int = self.collection.count()
272
- if count == 0:
273
- return []
274
- results = self.collection.query(
275
- query_texts=query,
276
- n_results=min(top_results_num, count),
277
- include=["metadatas"]
278
- )
279
- return [item["task"] for item in results["metadatas"][0]]
280
-
281
-
282
- # Initialize results storage
283
- def try_weaviate():
284
- WEAVIATE_URL = os.getenv("WEAVIATE_URL", "")
285
- WEAVIATE_USE_EMBEDDED = os.getenv("WEAVIATE_USE_EMBEDDED", "False").lower() == "true"
286
- if (WEAVIATE_URL or WEAVIATE_USE_EMBEDDED) and can_import("extensions.weaviate_storage"):
287
- WEAVIATE_API_KEY = os.getenv("WEAVIATE_API_KEY", "")
288
- from extensions.weaviate_storage import WeaviateResultsStorage
289
- print("\nUsing results storage: " + "\033[93m\033[1m" + "Weaviate" + "\033[0m\033[0m")
290
- return WeaviateResultsStorage(OPENAI_API_KEY, WEAVIATE_URL, WEAVIATE_API_KEY, WEAVIATE_USE_EMBEDDED, LLM_MODEL, LLAMA_MODEL_PATH, RESULTS_STORE_NAME, OBJECTIVE)
291
- return None
292
-
293
- def try_pinecone():
294
- PINECONE_API_KEY = os.getenv("PINECONE_API_KEY", "")
295
- if PINECONE_API_KEY and can_import("extensions.pinecone_storage"):
296
- PINECONE_ENVIRONMENT = os.getenv("PINECONE_ENVIRONMENT", "")
297
- assert (
298
- PINECONE_ENVIRONMENT
299
- ), "\033[91m\033[1m" + "PINECONE_ENVIRONMENT environment variable is missing from .env" + "\033[0m\033[0m"
300
- from extensions.pinecone_storage import PineconeResultsStorage
301
- print("\nUsing results storage: " + "\033[93m\033[1m" + "Pinecone" + "\033[0m\033[0m")
302
- return PineconeResultsStorage(OPENAI_API_KEY, PINECONE_API_KEY, PINECONE_ENVIRONMENT, LLM_MODEL, LLAMA_MODEL_PATH, RESULTS_STORE_NAME, OBJECTIVE)
303
- return None
304
-
305
- def use_chroma():
306
- print("\nUsing results storage: " + "\033[93m\033[1m" + "Chroma (Default)" + "\033[0m\033[0m")
307
- return DefaultResultsStorage()
308
-
309
- results_storage = try_weaviate() or try_pinecone() or use_chroma()
310
-
311
- # Task storage supporting only a single instance of BabyAGI
312
- class SingleTaskListStorage:
313
- def __init__(self):
314
- self.tasks = deque([])
315
- self.task_id_counter = 0
316
-
317
- def append(self, task: Dict):
318
- self.tasks.append(task)
319
-
320
- def replace(self, tasks: List[Dict]):
321
- self.tasks = deque(tasks)
322
-
323
- def popleft(self):
324
- return self.tasks.popleft()
325
-
326
- def is_empty(self):
327
- return False if self.tasks else True
328
-
329
- def next_task_id(self):
330
- self.task_id_counter += 1
331
- return self.task_id_counter
332
-
333
- def get_task_names(self):
334
- return [t["task_name"] for t in self.tasks]
335
-
336
-
337
- # Initialize tasks storage
338
- tasks_storage = SingleTaskListStorage()
339
- if COOPERATIVE_MODE in ['l', 'local']:
340
- if can_import("extensions.ray_tasks"):
341
- import sys
342
- from pathlib import Path
343
-
344
- sys.path.append(str(Path(__file__).resolve().parent))
345
- from extensions.ray_tasks import CooperativeTaskListStorage
346
-
347
- tasks_storage = CooperativeTaskListStorage(OBJECTIVE)
348
- print("\nReplacing tasks storage: " + "\033[93m\033[1m" + "Ray" + "\033[0m\033[0m")
349
- elif COOPERATIVE_MODE in ['d', 'distributed']:
350
- pass
351
-
352
-
353
- def limit_tokens_from_string(string: str, model: str, limit: int) -> str:
354
- """Limits the string to a number of tokens (estimated)."""
355
-
356
- try:
357
- encoding = tiktoken.encoding_for_model(model)
358
- except:
359
- encoding = tiktoken.encoding_for_model('gpt2') # Fallback for others.
360
-
361
- encoded = encoding.encode(string)
362
-
363
- return encoding.decode(encoded[:limit])
364
-
365
-
366
- def openai_call(
367
- prompt: str,
368
- model: str = LLM_MODEL,
369
- temperature: float = OPENAI_TEMPERATURE,
370
- max_tokens: int = 100,
371
- ):
372
- while True:
373
- messages=[
374
- {
375
- "role": "user",
376
- "content": "prompt"
377
- }
378
- ],
379
- client = Groq(api_key=os.getenv("api_key"))
380
- res = ""
381
- print(prompt)
382
- completion = client.chat.completions.create(
383
- model="llama3-8b-8192",
384
- messages=[
385
- {
386
- "role": "user",
387
- "content": prompt
388
- }
389
- ],
390
- temperature=1,
391
- max_tokens=1024,
392
- top_p=1,
393
- stream=True,
394
- stop=None,
395
- )
396
- for chunk in completion:
397
- #print(chunk.choices[0].delta.content)
398
- #print(chunk.choices[0].delta.content or "", end="")
399
- res += chunk.choices[0].delta.content or ""
400
- return res
401
-
402
- while True:
403
-
404
-
405
- try:
406
- if model.lower().startswith("llama"):
407
- result = llm(prompt[:CTX_MAX],
408
- stop=["### Human"],
409
- echo=False,
410
- temperature=0.2,
411
- top_k=40,
412
- top_p=0.95,
413
- repeat_penalty=1.05,
414
- max_tokens=200)
415
- # print('\n*****RESULT JSON DUMP*****\n')
416
- # print(json.dumps(result))
417
- # print('\n')
418
- for chunk in completion:
419
- print(chunk.choices[0].delta.content or "", end="")
420
- return result['choices'][0]['text'].strip()
421
- elif model.lower().startswith("human"):
422
- return user_input_await(prompt)
423
- elif not model.lower().startswith("gpt-"):
424
- # Use completion API
425
- response = openai.Completion.create(
426
- engine=model,
427
- prompt=prompt,
428
- temperature=temperature,
429
- max_tokens=max_tokens,
430
- top_p=1,
431
- frequency_penalty=0,
432
- presence_penalty=0,
433
- )
434
- return response.choices[0].text.strip()
435
- else:
436
- # Use 4000 instead of the real limit (4097) to give a bit of wiggle room for the encoding of roles.
437
- # TODO: different limits for different models.
438
-
439
- trimmed_prompt = limit_tokens_from_string(prompt, model, 4000 - max_tokens)
440
-
441
- # Use chat completion API
442
- messages = [{"role": "system", "content": trimmed_prompt}]
443
- response = openai.ChatCompletion.create(
444
- model=model,
445
- messages=messages,
446
- temperature=temperature,
447
- max_tokens=max_tokens,
448
- n=1,
449
- stop=None,
450
- )
451
- return response.choices[0].message.content.strip()
452
- except openai.error.RateLimitError:
453
- print(
454
- " *** The OpenAI API rate limit has been exceeded. Waiting 10 seconds and trying again. ***"
455
- )
456
- time.sleep(10) # Wait 10 seconds and try again
457
- except openai.error.Timeout:
458
- print(
459
- " *** OpenAI API timeout occurred. Waiting 10 seconds and trying again. ***"
460
- )
461
- time.sleep(10) # Wait 10 seconds and try again
462
- except openai.error.APIError:
463
- print(
464
- " *** OpenAI API error occurred. Waiting 10 seconds and trying again. ***"
465
- )
466
- time.sleep(10) # Wait 10 seconds and try again
467
- except openai.error.APIConnectionError:
468
- print(
469
- " *** OpenAI API connection error occurred. Check your network settings, proxy configuration, SSL certificates, or firewall rules. Waiting 10 seconds and trying again. ***"
470
- )
471
- time.sleep(10) # Wait 10 seconds and try again
472
- except openai.error.InvalidRequestError:
473
- print(
474
- " *** OpenAI API invalid request. Check the documentation for the specific API method you are calling and make sure you are sending valid and complete parameters. Waiting 10 seconds and trying again. ***"
475
- )
476
- time.sleep(10) # Wait 10 seconds and try again
477
- except openai.error.ServiceUnavailableError:
478
- print(
479
- " *** OpenAI API service unavailable. Waiting 10 seconds and trying again. ***"
480
- )
481
- time.sleep(10) # Wait 10 seconds and try again
482
- else:
483
- break
484
-
485
-
486
- def task_creation_agent(
487
- objective: str, result: Dict, task_description: str, task_list: List[str]
488
- ):
489
- prompt = f"""
490
- You are to use the result from an execution agent to create new tasks with the following objective: {objective}.
491
- The last completed task has the result: \n{result["data"]}
492
- This result was based on this task description: {task_description}.\n"""
493
-
494
- if task_list:
495
- prompt += f"These are incomplete tasks: {', '.join(task_list)}\n"
496
- prompt += "Based on the result, return a list of tasks to be completed in order to meet the objective. "
497
- if task_list:
498
- prompt += "These new tasks must not overlap with incomplete tasks. "
499
-
500
- prompt += """
501
- Return one task per line in your response. The result must be a numbered list in the format:
502
-
503
- #. First task
504
- #. Second task
505
-
506
- The number of each entry must be followed by a period. If your list is empty, write "There are no tasks to add at this time."
507
- Unless your list is empty, do not include any headers before your numbered list or follow your numbered list with any other output."""
508
-
509
- print(f'\n*****TASK CREATION AGENT PROMPT****\n{prompt}\n')
510
- response = openai_call(prompt, max_tokens=4000)
511
- print(f'\n****TASK CREATION AGENT RESPONSE****\n{response}\n')
512
- new_tasks = response.split('\n')
513
- new_tasks_list = []
514
- for task_string in new_tasks:
515
- task_parts = task_string.strip().split(".", 1)
516
- if len(task_parts) == 2:
517
- task_id = ''.join(s for s in task_parts[0] if s.isnumeric())
518
- task_name = re.sub(r'[^\w\s_]+', '', task_parts[1]).strip()
519
- if task_name.strip() and task_id.isnumeric():
520
- new_tasks_list.append(task_name)
521
- # print('New task created: ' + task_name)
522
-
523
- out = [{"task_name": task_name} for task_name in new_tasks_list]
524
- return out
525
-
526
-
527
- def prioritization_agent():
528
- task_names = tasks_storage.get_task_names()
529
- bullet_string = '\n'
530
-
531
- prompt = f"""
532
- You are tasked with prioritizing the following tasks: {bullet_string + bullet_string.join(task_names)}
533
- Consider the ultimate objective of your team: {OBJECTIVE}.
534
- Tasks should be sorted from highest to lowest priority, where higher-priority tasks are those that act as pre-requisites or are more essential for meeting the objective.
535
- Do not remove any tasks. Return the ranked tasks as a numbered list in the format:
536
-
537
- #. First task
538
- #. Second task
539
-
540
- The entries must be consecutively numbered, starting with 1. The number of each entry must be followed by a period.
541
- Do not include any headers before your ranked list or follow your list with any other output."""
542
-
543
- print(f'\n****TASK PRIORITIZATION AGENT PROMPT****\n{prompt}\n')
544
- response = openai_call(prompt, max_tokens=2000)
545
- print(f'\n****TASK PRIORITIZATION AGENT RESPONSE****\n{response}\n')
546
- if not response:
547
- print('Received empty response from priotritization agent. Keeping task list unchanged.')
548
- return
549
- new_tasks = response.split("\n") if "\n" in response else [response]
550
- new_tasks_list = []
551
- for task_string in new_tasks:
552
- task_parts = task_string.strip().split(".", 1)
553
- if len(task_parts) == 2:
554
- task_id = ''.join(s for s in task_parts[0] if s.isnumeric())
555
- task_name = re.sub(r'[^\w\s_]+', '', task_parts[1]).strip()
556
- if task_name.strip():
557
- new_tasks_list.append({"task_id": task_id, "task_name": task_name})
558
-
559
- return new_tasks_list
560
-
561
-
562
- # Execute a task based on the objective and five previous tasks
563
- def execution_agent(objective: str, task: str) -> str:
564
- """
565
- Executes a task based on the given objective and previous context.
566
-
567
- Args:
568
- objective (str): The objective or goal for the AI to perform the task.
569
- task (str): The task to be executed by the AI.
570
-
571
- Returns:
572
- str: The response generated by the AI for the given task.
573
-
574
- """
575
-
576
- context = context_agent(query=objective, top_results_num=5)
577
- # print("\n****RELEVANT CONTEXT****\n")
578
- # print(context)
579
- # print('')
580
- prompt = f'Perform one task based on the following objective: {objective}.\n'
581
- if context:
582
- prompt += 'Take into account these previously completed tasks:' + '\n'.join(context)
583
- prompt += f'\nYour task: {task}\nResponse:'
584
- return openai_call(prompt, max_tokens=2000)
585
-
586
-
587
- # Get the top n completed tasks for the objective
588
- def context_agent(query: str, top_results_num: int):
589
- """
590
- Retrieves context for a given query from an index of tasks.
591
-
592
- Args:
593
- query (str): The query or objective for retrieving context.
594
- top_results_num (int): The number of top results to retrieve.
595
-
596
- Returns:
597
- list: A list of tasks as context for the given query, sorted by relevance.
598
-
599
- """
600
- results = results_storage.query(query=query, top_results_num=top_results_num)
601
- # print("****RESULTS****")
602
- # print(results)
603
- return results
604
-
605
-
606
- # Add the initial task if starting new objective
607
- if not JOIN_EXISTING_OBJECTIVE:
608
- initial_task = {
609
- "task_id": tasks_storage.next_task_id(),
610
- "task_name": INITIAL_TASK
611
- }
612
- tasks_storage.append(initial_task)
613
-
614
-
615
- def main():
616
- loop = True
617
- while loop:
618
- # As long as there are tasks in the storage...
619
- if not tasks_storage.is_empty():
620
- #OBJECTIVE = "ボットの性能をよくする方法 日本語で説明"
621
- # Print the task list
622
- print("\033[95m\033[1m" + "\n*****TASK LIST*****\n" + "\033[0m\033[0m")
623
- for t in tasks_storage.get_task_names():
624
- print(" • " + str(t))
625
-
626
- # Step 1: Pull the first incomplete task
627
- task = tasks_storage.popleft()
628
- print("\033[92m\033[1m" + "\n*****NEXT TASK*****\n" + "\033[0m\033[0m")
629
- print(str(task["task_name"]))
630
-
631
- # Send to execution function to complete the task based on the context
632
- result = execution_agent(OBJECTIVE, str(task["task_name"]))
633
- print("\033[93m\033[1m" + "\n*****TASK RESULT*****\n" + "\033[0m\033[0m")
634
- print(result)
635
-
636
- # Step 2: Enrich result and store in the results storage
637
- # This is where you should enrich the result if needed
638
- enriched_result = {
639
- "data": result
640
- }
641
- # extract the actual result from the dictionary
642
- # since we don't do enrichment currently
643
- # vector = enriched_result["data"]
644
-
645
- result_id = f"result_{task['task_id']}"
646
-
647
- #results_storage.add(task, result, result_id)
648
-
649
- # Step 3: Create new tasks and re-prioritize task list
650
- # only the main instance in cooperative mode does that
651
- new_tasks = task_creation_agent(
652
- OBJECTIVE,
653
- enriched_result,
654
- task["task_name"],
655
- tasks_storage.get_task_names(),
656
- )
657
-
658
- print('Adding new tasks to task_storage')
659
- for new_task in new_tasks:
660
- new_task.update({"task_id": tasks_storage.next_task_id()})
661
- print(str(new_task))
662
- tasks_storage.append(new_task)
663
-
664
- if not JOIN_EXISTING_OBJECTIVE:
665
- prioritized_tasks = prioritization_agent()
666
- if prioritized_tasks:
667
- tasks_storage.replace(prioritized_tasks)
668
-
669
- # Sleep a bit before checking the task list again
670
- time.sleep(5)
671
- else:
672
- print('Done.')
673
- loop = False
674
-
675
-
676
- if __name__ == "__main__":
677
- main()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
workspace/api/__init__.py DELETED
File without changes
workspace/api/database.db DELETED
Binary file (8.19 kB)
 
workspace/api/database.py DELETED
File without changes
workspace/api/main.py DELETED
File without changes
workspace/api/models.py DELETED
File without changes
workspace/api/routes.py DELETED
File without changes
workspace/chat.db DELETED
Binary file (8.19 kB)
 
workspace/chat_history.db DELETED
File without changes
workspace/customer_inquiries.db DELETED
Binary file (12.3 kB)
 
workspace/database.db DELETED
Binary file (12.3 kB)
 
workspace/database.sqlite3 DELETED
Binary file (12.3 kB)
 
workspace/db.sqlite DELETED
Binary file (8.19 kB)
 
workspace/download_image.js DELETED
File without changes
workspace/example.txt DELETED
File without changes
workspace/examples/lora_single_gpu/llama3_lora_sft.yaml DELETED
@@ -1,11 +0,0 @@
1
- model:
2
- params:
3
- hidden_size: 128
4
- intermediate_size: 512
5
- num_attention_heads: 8
6
- num_hidden_layers: 6
7
- type: LLaMA
8
- training:
9
- batch_size: 4
10
- epochs: 3
11
- lr: 0.0001
 
 
 
 
 
 
 
 
 
 
 
 
workspace/greet_user.py DELETED
File without changes
workspace/hello.py DELETED
@@ -1 +0,0 @@
1
- print("Hello, World!")
 
 
workspace/hello.txt DELETED
File without changes
workspace/history.txt DELETED
@@ -1 +0,0 @@
1
- Appraisal History:
 
 
workspace/items.csv DELETED
@@ -1,5 +0,0 @@
1
- brand,model_number,purchase_date,condition
2
- Rolex,Submariner,2020-01-01,Excellent
3
- Omega,Seamaster,2019-06-01,Good
4
- Cartier,Santos,2018-03-01,Fair
5
- Patek Philippe,Calatrava,2022-01-01,Excellent
 
 
 
 
 
 
workspace/items.db DELETED
Binary file (8.19 kB)
 
workspace/line_data.json DELETED
@@ -1,2730 +0,0 @@
1
- [
2
- {
3
- "id": 0,
4
- "name": "User 0",
5
- "messages": [
6
- {
7
- "text": "Message 0 from User 0",
8
- "timestamp": "0:00"
9
- },
10
- {
11
- "text": "Message 1 from User 0",
12
- "timestamp": "1:00"
13
- },
14
- {
15
- "text": "Message 2 from User 0",
16
- "timestamp": "2:00"
17
- },
18
- {
19
- "text": "Message 3 from User 0",
20
- "timestamp": "3:00"
21
- },
22
- {
23
- "text": "Message 4 from User 0",
24
- "timestamp": "4:00"
25
- }
26
- ]
27
- },
28
- {
29
- "id": 1,
30
- "name": "User 1",
31
- "messages": [
32
- {
33
- "text": "Message 0 from User 1",
34
- "timestamp": "0:00"
35
- },
36
- {
37
- "text": "Message 1 from User 1",
38
- "timestamp": "1:00"
39
- }
40
- ]
41
- },
42
- {
43
- "id": 2,
44
- "name": "User 2",
45
- "messages": [
46
- {
47
- "text": "Message 0 from User 2",
48
- "timestamp": "0:00"
49
- },
50
- {
51
- "text": "Message 1 from User 2",
52
- "timestamp": "1:00"
53
- },
54
- {
55
- "text": "Message 2 from User 2",
56
- "timestamp": "2:00"
57
- }
58
- ]
59
- },
60
- {
61
- "id": 3,
62
- "name": "User 3",
63
- "messages": [
64
- {
65
- "text": "Message 0 from User 3",
66
- "timestamp": "0:00"
67
- },
68
- {
69
- "text": "Message 1 from User 3",
70
- "timestamp": "1:00"
71
- },
72
- {
73
- "text": "Message 2 from User 3",
74
- "timestamp": "2:00"
75
- },
76
- {
77
- "text": "Message 3 from User 3",
78
- "timestamp": "3:00"
79
- },
80
- {
81
- "text": "Message 4 from User 3",
82
- "timestamp": "4:00"
83
- },
84
- {
85
- "text": "Message 5 from User 3",
86
- "timestamp": "5:00"
87
- },
88
- {
89
- "text": "Message 6 from User 3",
90
- "timestamp": "6:00"
91
- },
92
- {
93
- "text": "Message 7 from User 3",
94
- "timestamp": "7:00"
95
- },
96
- {
97
- "text": "Message 8 from User 3",
98
- "timestamp": "8:00"
99
- },
100
- {
101
- "text": "Message 9 from User 3",
102
- "timestamp": "9:00"
103
- }
104
- ]
105
- },
106
- {
107
- "id": 4,
108
- "name": "User 4",
109
- "messages": [
110
- {
111
- "text": "Message 0 from User 4",
112
- "timestamp": "0:00"
113
- },
114
- {
115
- "text": "Message 1 from User 4",
116
- "timestamp": "1:00"
117
- },
118
- {
119
- "text": "Message 2 from User 4",
120
- "timestamp": "2:00"
121
- },
122
- {
123
- "text": "Message 3 from User 4",
124
- "timestamp": "3:00"
125
- },
126
- {
127
- "text": "Message 4 from User 4",
128
- "timestamp": "4:00"
129
- },
130
- {
131
- "text": "Message 5 from User 4",
132
- "timestamp": "5:00"
133
- },
134
- {
135
- "text": "Message 6 from User 4",
136
- "timestamp": "6:00"
137
- },
138
- {
139
- "text": "Message 7 from User 4",
140
- "timestamp": "7:00"
141
- }
142
- ]
143
- },
144
- {
145
- "id": 5,
146
- "name": "User 5",
147
- "messages": [
148
- {
149
- "text": "Message 0 from User 5",
150
- "timestamp": "0:00"
151
- },
152
- {
153
- "text": "Message 1 from User 5",
154
- "timestamp": "1:00"
155
- },
156
- {
157
- "text": "Message 2 from User 5",
158
- "timestamp": "2:00"
159
- }
160
- ]
161
- },
162
- {
163
- "id": 6,
164
- "name": "User 6",
165
- "messages": [
166
- {
167
- "text": "Message 0 from User 6",
168
- "timestamp": "0:00"
169
- },
170
- {
171
- "text": "Message 1 from User 6",
172
- "timestamp": "1:00"
173
- },
174
- {
175
- "text": "Message 2 from User 6",
176
- "timestamp": "2:00"
177
- },
178
- {
179
- "text": "Message 3 from User 6",
180
- "timestamp": "3:00"
181
- }
182
- ]
183
- },
184
- {
185
- "id": 7,
186
- "name": "User 7",
187
- "messages": [
188
- {
189
- "text": "Message 0 from User 7",
190
- "timestamp": "0:00"
191
- },
192
- {
193
- "text": "Message 1 from User 7",
194
- "timestamp": "1:00"
195
- },
196
- {
197
- "text": "Message 2 from User 7",
198
- "timestamp": "2:00"
199
- },
200
- {
201
- "text": "Message 3 from User 7",
202
- "timestamp": "3:00"
203
- },
204
- {
205
- "text": "Message 4 from User 7",
206
- "timestamp": "4:00"
207
- },
208
- {
209
- "text": "Message 5 from User 7",
210
- "timestamp": "5:00"
211
- },
212
- {
213
- "text": "Message 6 from User 7",
214
- "timestamp": "6:00"
215
- },
216
- {
217
- "text": "Message 7 from User 7",
218
- "timestamp": "7:00"
219
- },
220
- {
221
- "text": "Message 8 from User 7",
222
- "timestamp": "8:00"
223
- }
224
- ]
225
- },
226
- {
227
- "id": 8,
228
- "name": "User 8",
229
- "messages": [
230
- {
231
- "text": "Message 0 from User 8",
232
- "timestamp": "0:00"
233
- },
234
- {
235
- "text": "Message 1 from User 8",
236
- "timestamp": "1:00"
237
- },
238
- {
239
- "text": "Message 2 from User 8",
240
- "timestamp": "2:00"
241
- },
242
- {
243
- "text": "Message 3 from User 8",
244
- "timestamp": "3:00"
245
- },
246
- {
247
- "text": "Message 4 from User 8",
248
- "timestamp": "4:00"
249
- },
250
- {
251
- "text": "Message 5 from User 8",
252
- "timestamp": "5:00"
253
- }
254
- ]
255
- },
256
- {
257
- "id": 9,
258
- "name": "User 9",
259
- "messages": [
260
- {
261
- "text": "Message 0 from User 9",
262
- "timestamp": "0:00"
263
- },
264
- {
265
- "text": "Message 1 from User 9",
266
- "timestamp": "1:00"
267
- }
268
- ]
269
- },
270
- {
271
- "id": 10,
272
- "name": "User 10",
273
- "messages": [
274
- {
275
- "text": "Message 0 from User 10",
276
- "timestamp": "0:00"
277
- },
278
- {
279
- "text": "Message 1 from User 10",
280
- "timestamp": "1:00"
281
- },
282
- {
283
- "text": "Message 2 from User 10",
284
- "timestamp": "2:00"
285
- },
286
- {
287
- "text": "Message 3 from User 10",
288
- "timestamp": "3:00"
289
- },
290
- {
291
- "text": "Message 4 from User 10",
292
- "timestamp": "4:00"
293
- },
294
- {
295
- "text": "Message 5 from User 10",
296
- "timestamp": "5:00"
297
- },
298
- {
299
- "text": "Message 6 from User 10",
300
- "timestamp": "6:00"
301
- },
302
- {
303
- "text": "Message 7 from User 10",
304
- "timestamp": "7:00"
305
- },
306
- {
307
- "text": "Message 8 from User 10",
308
- "timestamp": "8:00"
309
- },
310
- {
311
- "text": "Message 9 from User 10",
312
- "timestamp": "9:00"
313
- }
314
- ]
315
- },
316
- {
317
- "id": 11,
318
- "name": "User 11",
319
- "messages": [
320
- {
321
- "text": "Message 0 from User 11",
322
- "timestamp": "0:00"
323
- },
324
- {
325
- "text": "Message 1 from User 11",
326
- "timestamp": "1:00"
327
- },
328
- {
329
- "text": "Message 2 from User 11",
330
- "timestamp": "2:00"
331
- },
332
- {
333
- "text": "Message 3 from User 11",
334
- "timestamp": "3:00"
335
- },
336
- {
337
- "text": "Message 4 from User 11",
338
- "timestamp": "4:00"
339
- },
340
- {
341
- "text": "Message 5 from User 11",
342
- "timestamp": "5:00"
343
- },
344
- {
345
- "text": "Message 6 from User 11",
346
- "timestamp": "6:00"
347
- },
348
- {
349
- "text": "Message 7 from User 11",
350
- "timestamp": "7:00"
351
- },
352
- {
353
- "text": "Message 8 from User 11",
354
- "timestamp": "8:00"
355
- }
356
- ]
357
- },
358
- {
359
- "id": 12,
360
- "name": "User 12",
361
- "messages": [
362
- {
363
- "text": "Message 0 from User 12",
364
- "timestamp": "0:00"
365
- },
366
- {
367
- "text": "Message 1 from User 12",
368
- "timestamp": "1:00"
369
- },
370
- {
371
- "text": "Message 2 from User 12",
372
- "timestamp": "2:00"
373
- },
374
- {
375
- "text": "Message 3 from User 12",
376
- "timestamp": "3:00"
377
- },
378
- {
379
- "text": "Message 4 from User 12",
380
- "timestamp": "4:00"
381
- },
382
- {
383
- "text": "Message 5 from User 12",
384
- "timestamp": "5:00"
385
- },
386
- {
387
- "text": "Message 6 from User 12",
388
- "timestamp": "6:00"
389
- },
390
- {
391
- "text": "Message 7 from User 12",
392
- "timestamp": "7:00"
393
- },
394
- {
395
- "text": "Message 8 from User 12",
396
- "timestamp": "8:00"
397
- }
398
- ]
399
- },
400
- {
401
- "id": 13,
402
- "name": "User 13",
403
- "messages": [
404
- {
405
- "text": "Message 0 from User 13",
406
- "timestamp": "0:00"
407
- },
408
- {
409
- "text": "Message 1 from User 13",
410
- "timestamp": "1:00"
411
- },
412
- {
413
- "text": "Message 2 from User 13",
414
- "timestamp": "2:00"
415
- },
416
- {
417
- "text": "Message 3 from User 13",
418
- "timestamp": "3:00"
419
- },
420
- {
421
- "text": "Message 4 from User 13",
422
- "timestamp": "4:00"
423
- },
424
- {
425
- "text": "Message 5 from User 13",
426
- "timestamp": "5:00"
427
- },
428
- {
429
- "text": "Message 6 from User 13",
430
- "timestamp": "6:00"
431
- },
432
- {
433
- "text": "Message 7 from User 13",
434
- "timestamp": "7:00"
435
- },
436
- {
437
- "text": "Message 8 from User 13",
438
- "timestamp": "8:00"
439
- }
440
- ]
441
- },
442
- {
443
- "id": 14,
444
- "name": "User 14",
445
- "messages": [
446
- {
447
- "text": "Message 0 from User 14",
448
- "timestamp": "0:00"
449
- },
450
- {
451
- "text": "Message 1 from User 14",
452
- "timestamp": "1:00"
453
- },
454
- {
455
- "text": "Message 2 from User 14",
456
- "timestamp": "2:00"
457
- },
458
- {
459
- "text": "Message 3 from User 14",
460
- "timestamp": "3:00"
461
- },
462
- {
463
- "text": "Message 4 from User 14",
464
- "timestamp": "4:00"
465
- }
466
- ]
467
- },
468
- {
469
- "id": 15,
470
- "name": "User 15",
471
- "messages": [
472
- {
473
- "text": "Message 0 from User 15",
474
- "timestamp": "0:00"
475
- },
476
- {
477
- "text": "Message 1 from User 15",
478
- "timestamp": "1:00"
479
- },
480
- {
481
- "text": "Message 2 from User 15",
482
- "timestamp": "2:00"
483
- },
484
- {
485
- "text": "Message 3 from User 15",
486
- "timestamp": "3:00"
487
- },
488
- {
489
- "text": "Message 4 from User 15",
490
- "timestamp": "4:00"
491
- },
492
- {
493
- "text": "Message 5 from User 15",
494
- "timestamp": "5:00"
495
- }
496
- ]
497
- },
498
- {
499
- "id": 16,
500
- "name": "User 16",
501
- "messages": [
502
- {
503
- "text": "Message 0 from User 16",
504
- "timestamp": "0:00"
505
- },
506
- {
507
- "text": "Message 1 from User 16",
508
- "timestamp": "1:00"
509
- },
510
- {
511
- "text": "Message 2 from User 16",
512
- "timestamp": "2:00"
513
- },
514
- {
515
- "text": "Message 3 from User 16",
516
- "timestamp": "3:00"
517
- }
518
- ]
519
- },
520
- {
521
- "id": 17,
522
- "name": "User 17",
523
- "messages": [
524
- {
525
- "text": "Message 0 from User 17",
526
- "timestamp": "0:00"
527
- },
528
- {
529
- "text": "Message 1 from User 17",
530
- "timestamp": "1:00"
531
- },
532
- {
533
- "text": "Message 2 from User 17",
534
- "timestamp": "2:00"
535
- },
536
- {
537
- "text": "Message 3 from User 17",
538
- "timestamp": "3:00"
539
- },
540
- {
541
- "text": "Message 4 from User 17",
542
- "timestamp": "4:00"
543
- },
544
- {
545
- "text": "Message 5 from User 17",
546
- "timestamp": "5:00"
547
- }
548
- ]
549
- },
550
- {
551
- "id": 18,
552
- "name": "User 18",
553
- "messages": [
554
- {
555
- "text": "Message 0 from User 18",
556
- "timestamp": "0:00"
557
- },
558
- {
559
- "text": "Message 1 from User 18",
560
- "timestamp": "1:00"
561
- },
562
- {
563
- "text": "Message 2 from User 18",
564
- "timestamp": "2:00"
565
- }
566
- ]
567
- },
568
- {
569
- "id": 19,
570
- "name": "User 19",
571
- "messages": [
572
- {
573
- "text": "Message 0 from User 19",
574
- "timestamp": "0:00"
575
- },
576
- {
577
- "text": "Message 1 from User 19",
578
- "timestamp": "1:00"
579
- },
580
- {
581
- "text": "Message 2 from User 19",
582
- "timestamp": "2:00"
583
- },
584
- {
585
- "text": "Message 3 from User 19",
586
- "timestamp": "3:00"
587
- },
588
- {
589
- "text": "Message 4 from User 19",
590
- "timestamp": "4:00"
591
- },
592
- {
593
- "text": "Message 5 from User 19",
594
- "timestamp": "5:00"
595
- },
596
- {
597
- "text": "Message 6 from User 19",
598
- "timestamp": "6:00"
599
- }
600
- ]
601
- },
602
- {
603
- "id": 20,
604
- "name": "User 20",
605
- "messages": [
606
- {
607
- "text": "Message 0 from User 20",
608
- "timestamp": "0:00"
609
- },
610
- {
611
- "text": "Message 1 from User 20",
612
- "timestamp": "1:00"
613
- },
614
- {
615
- "text": "Message 2 from User 20",
616
- "timestamp": "2:00"
617
- },
618
- {
619
- "text": "Message 3 from User 20",
620
- "timestamp": "3:00"
621
- }
622
- ]
623
- },
624
- {
625
- "id": 21,
626
- "name": "User 21",
627
- "messages": [
628
- {
629
- "text": "Message 0 from User 21",
630
- "timestamp": "0:00"
631
- },
632
- {
633
- "text": "Message 1 from User 21",
634
- "timestamp": "1:00"
635
- },
636
- {
637
- "text": "Message 2 from User 21",
638
- "timestamp": "2:00"
639
- },
640
- {
641
- "text": "Message 3 from User 21",
642
- "timestamp": "3:00"
643
- },
644
- {
645
- "text": "Message 4 from User 21",
646
- "timestamp": "4:00"
647
- },
648
- {
649
- "text": "Message 5 from User 21",
650
- "timestamp": "5:00"
651
- },
652
- {
653
- "text": "Message 6 from User 21",
654
- "timestamp": "6:00"
655
- },
656
- {
657
- "text": "Message 7 from User 21",
658
- "timestamp": "7:00"
659
- },
660
- {
661
- "text": "Message 8 from User 21",
662
- "timestamp": "8:00"
663
- }
664
- ]
665
- },
666
- {
667
- "id": 22,
668
- "name": "User 22",
669
- "messages": [
670
- {
671
- "text": "Message 0 from User 22",
672
- "timestamp": "0:00"
673
- },
674
- {
675
- "text": "Message 1 from User 22",
676
- "timestamp": "1:00"
677
- },
678
- {
679
- "text": "Message 2 from User 22",
680
- "timestamp": "2:00"
681
- },
682
- {
683
- "text": "Message 3 from User 22",
684
- "timestamp": "3:00"
685
- },
686
- {
687
- "text": "Message 4 from User 22",
688
- "timestamp": "4:00"
689
- },
690
- {
691
- "text": "Message 5 from User 22",
692
- "timestamp": "5:00"
693
- },
694
- {
695
- "text": "Message 6 from User 22",
696
- "timestamp": "6:00"
697
- },
698
- {
699
- "text": "Message 7 from User 22",
700
- "timestamp": "7:00"
701
- }
702
- ]
703
- },
704
- {
705
- "id": 23,
706
- "name": "User 23",
707
- "messages": [
708
- {
709
- "text": "Message 0 from User 23",
710
- "timestamp": "0:00"
711
- },
712
- {
713
- "text": "Message 1 from User 23",
714
- "timestamp": "1:00"
715
- },
716
- {
717
- "text": "Message 2 from User 23",
718
- "timestamp": "2:00"
719
- },
720
- {
721
- "text": "Message 3 from User 23",
722
- "timestamp": "3:00"
723
- },
724
- {
725
- "text": "Message 4 from User 23",
726
- "timestamp": "4:00"
727
- },
728
- {
729
- "text": "Message 5 from User 23",
730
- "timestamp": "5:00"
731
- },
732
- {
733
- "text": "Message 6 from User 23",
734
- "timestamp": "6:00"
735
- },
736
- {
737
- "text": "Message 7 from User 23",
738
- "timestamp": "7:00"
739
- },
740
- {
741
- "text": "Message 8 from User 23",
742
- "timestamp": "8:00"
743
- }
744
- ]
745
- },
746
- {
747
- "id": 24,
748
- "name": "User 24",
749
- "messages": [
750
- {
751
- "text": "Message 0 from User 24",
752
- "timestamp": "0:00"
753
- },
754
- {
755
- "text": "Message 1 from User 24",
756
- "timestamp": "1:00"
757
- }
758
- ]
759
- },
760
- {
761
- "id": 25,
762
- "name": "User 25",
763
- "messages": [
764
- {
765
- "text": "Message 0 from User 25",
766
- "timestamp": "0:00"
767
- },
768
- {
769
- "text": "Message 1 from User 25",
770
- "timestamp": "1:00"
771
- },
772
- {
773
- "text": "Message 2 from User 25",
774
- "timestamp": "2:00"
775
- },
776
- {
777
- "text": "Message 3 from User 25",
778
- "timestamp": "3:00"
779
- },
780
- {
781
- "text": "Message 4 from User 25",
782
- "timestamp": "4:00"
783
- },
784
- {
785
- "text": "Message 5 from User 25",
786
- "timestamp": "5:00"
787
- },
788
- {
789
- "text": "Message 6 from User 25",
790
- "timestamp": "6:00"
791
- }
792
- ]
793
- },
794
- {
795
- "id": 26,
796
- "name": "User 26",
797
- "messages": [
798
- {
799
- "text": "Message 0 from User 26",
800
- "timestamp": "0:00"
801
- },
802
- {
803
- "text": "Message 1 from User 26",
804
- "timestamp": "1:00"
805
- }
806
- ]
807
- },
808
- {
809
- "id": 27,
810
- "name": "User 27",
811
- "messages": [
812
- {
813
- "text": "Message 0 from User 27",
814
- "timestamp": "0:00"
815
- }
816
- ]
817
- },
818
- {
819
- "id": 28,
820
- "name": "User 28",
821
- "messages": [
822
- {
823
- "text": "Message 0 from User 28",
824
- "timestamp": "0:00"
825
- },
826
- {
827
- "text": "Message 1 from User 28",
828
- "timestamp": "1:00"
829
- },
830
- {
831
- "text": "Message 2 from User 28",
832
- "timestamp": "2:00"
833
- },
834
- {
835
- "text": "Message 3 from User 28",
836
- "timestamp": "3:00"
837
- },
838
- {
839
- "text": "Message 4 from User 28",
840
- "timestamp": "4:00"
841
- }
842
- ]
843
- },
844
- {
845
- "id": 29,
846
- "name": "User 29",
847
- "messages": [
848
- {
849
- "text": "Message 0 from User 29",
850
- "timestamp": "0:00"
851
- },
852
- {
853
- "text": "Message 1 from User 29",
854
- "timestamp": "1:00"
855
- },
856
- {
857
- "text": "Message 2 from User 29",
858
- "timestamp": "2:00"
859
- },
860
- {
861
- "text": "Message 3 from User 29",
862
- "timestamp": "3:00"
863
- },
864
- {
865
- "text": "Message 4 from User 29",
866
- "timestamp": "4:00"
867
- },
868
- {
869
- "text": "Message 5 from User 29",
870
- "timestamp": "5:00"
871
- },
872
- {
873
- "text": "Message 6 from User 29",
874
- "timestamp": "6:00"
875
- },
876
- {
877
- "text": "Message 7 from User 29",
878
- "timestamp": "7:00"
879
- },
880
- {
881
- "text": "Message 8 from User 29",
882
- "timestamp": "8:00"
883
- },
884
- {
885
- "text": "Message 9 from User 29",
886
- "timestamp": "9:00"
887
- }
888
- ]
889
- },
890
- {
891
- "id": 30,
892
- "name": "User 30",
893
- "messages": [
894
- {
895
- "text": "Message 0 from User 30",
896
- "timestamp": "0:00"
897
- },
898
- {
899
- "text": "Message 1 from User 30",
900
- "timestamp": "1:00"
901
- },
902
- {
903
- "text": "Message 2 from User 30",
904
- "timestamp": "2:00"
905
- },
906
- {
907
- "text": "Message 3 from User 30",
908
- "timestamp": "3:00"
909
- }
910
- ]
911
- },
912
- {
913
- "id": 31,
914
- "name": "User 31",
915
- "messages": [
916
- {
917
- "text": "Message 0 from User 31",
918
- "timestamp": "0:00"
919
- },
920
- {
921
- "text": "Message 1 from User 31",
922
- "timestamp": "1:00"
923
- },
924
- {
925
- "text": "Message 2 from User 31",
926
- "timestamp": "2:00"
927
- }
928
- ]
929
- },
930
- {
931
- "id": 32,
932
- "name": "User 32",
933
- "messages": [
934
- {
935
- "text": "Message 0 from User 32",
936
- "timestamp": "0:00"
937
- },
938
- {
939
- "text": "Message 1 from User 32",
940
- "timestamp": "1:00"
941
- },
942
- {
943
- "text": "Message 2 from User 32",
944
- "timestamp": "2:00"
945
- },
946
- {
947
- "text": "Message 3 from User 32",
948
- "timestamp": "3:00"
949
- },
950
- {
951
- "text": "Message 4 from User 32",
952
- "timestamp": "4:00"
953
- },
954
- {
955
- "text": "Message 5 from User 32",
956
- "timestamp": "5:00"
957
- }
958
- ]
959
- },
960
- {
961
- "id": 33,
962
- "name": "User 33",
963
- "messages": [
964
- {
965
- "text": "Message 0 from User 33",
966
- "timestamp": "0:00"
967
- },
968
- {
969
- "text": "Message 1 from User 33",
970
- "timestamp": "1:00"
971
- },
972
- {
973
- "text": "Message 2 from User 33",
974
- "timestamp": "2:00"
975
- },
976
- {
977
- "text": "Message 3 from User 33",
978
- "timestamp": "3:00"
979
- },
980
- {
981
- "text": "Message 4 from User 33",
982
- "timestamp": "4:00"
983
- },
984
- {
985
- "text": "Message 5 from User 33",
986
- "timestamp": "5:00"
987
- }
988
- ]
989
- },
990
- {
991
- "id": 34,
992
- "name": "User 34",
993
- "messages": [
994
- {
995
- "text": "Message 0 from User 34",
996
- "timestamp": "0:00"
997
- },
998
- {
999
- "text": "Message 1 from User 34",
1000
- "timestamp": "1:00"
1001
- },
1002
- {
1003
- "text": "Message 2 from User 34",
1004
- "timestamp": "2:00"
1005
- },
1006
- {
1007
- "text": "Message 3 from User 34",
1008
- "timestamp": "3:00"
1009
- },
1010
- {
1011
- "text": "Message 4 from User 34",
1012
- "timestamp": "4:00"
1013
- },
1014
- {
1015
- "text": "Message 5 from User 34",
1016
- "timestamp": "5:00"
1017
- },
1018
- {
1019
- "text": "Message 6 from User 34",
1020
- "timestamp": "6:00"
1021
- }
1022
- ]
1023
- },
1024
- {
1025
- "id": 35,
1026
- "name": "User 35",
1027
- "messages": [
1028
- {
1029
- "text": "Message 0 from User 35",
1030
- "timestamp": "0:00"
1031
- },
1032
- {
1033
- "text": "Message 1 from User 35",
1034
- "timestamp": "1:00"
1035
- },
1036
- {
1037
- "text": "Message 2 from User 35",
1038
- "timestamp": "2:00"
1039
- },
1040
- {
1041
- "text": "Message 3 from User 35",
1042
- "timestamp": "3:00"
1043
- },
1044
- {
1045
- "text": "Message 4 from User 35",
1046
- "timestamp": "4:00"
1047
- },
1048
- {
1049
- "text": "Message 5 from User 35",
1050
- "timestamp": "5:00"
1051
- },
1052
- {
1053
- "text": "Message 6 from User 35",
1054
- "timestamp": "6:00"
1055
- },
1056
- {
1057
- "text": "Message 7 from User 35",
1058
- "timestamp": "7:00"
1059
- },
1060
- {
1061
- "text": "Message 8 from User 35",
1062
- "timestamp": "8:00"
1063
- }
1064
- ]
1065
- },
1066
- {
1067
- "id": 36,
1068
- "name": "User 36",
1069
- "messages": [
1070
- {
1071
- "text": "Message 0 from User 36",
1072
- "timestamp": "0:00"
1073
- },
1074
- {
1075
- "text": "Message 1 from User 36",
1076
- "timestamp": "1:00"
1077
- },
1078
- {
1079
- "text": "Message 2 from User 36",
1080
- "timestamp": "2:00"
1081
- },
1082
- {
1083
- "text": "Message 3 from User 36",
1084
- "timestamp": "3:00"
1085
- }
1086
- ]
1087
- },
1088
- {
1089
- "id": 37,
1090
- "name": "User 37",
1091
- "messages": [
1092
- {
1093
- "text": "Message 0 from User 37",
1094
- "timestamp": "0:00"
1095
- },
1096
- {
1097
- "text": "Message 1 from User 37",
1098
- "timestamp": "1:00"
1099
- },
1100
- {
1101
- "text": "Message 2 from User 37",
1102
- "timestamp": "2:00"
1103
- },
1104
- {
1105
- "text": "Message 3 from User 37",
1106
- "timestamp": "3:00"
1107
- },
1108
- {
1109
- "text": "Message 4 from User 37",
1110
- "timestamp": "4:00"
1111
- },
1112
- {
1113
- "text": "Message 5 from User 37",
1114
- "timestamp": "5:00"
1115
- },
1116
- {
1117
- "text": "Message 6 from User 37",
1118
- "timestamp": "6:00"
1119
- },
1120
- {
1121
- "text": "Message 7 from User 37",
1122
- "timestamp": "7:00"
1123
- }
1124
- ]
1125
- },
1126
- {
1127
- "id": 38,
1128
- "name": "User 38",
1129
- "messages": [
1130
- {
1131
- "text": "Message 0 from User 38",
1132
- "timestamp": "0:00"
1133
- },
1134
- {
1135
- "text": "Message 1 from User 38",
1136
- "timestamp": "1:00"
1137
- }
1138
- ]
1139
- },
1140
- {
1141
- "id": 39,
1142
- "name": "User 39",
1143
- "messages": [
1144
- {
1145
- "text": "Message 0 from User 39",
1146
- "timestamp": "0:00"
1147
- }
1148
- ]
1149
- },
1150
- {
1151
- "id": 40,
1152
- "name": "User 40",
1153
- "messages": [
1154
- {
1155
- "text": "Message 0 from User 40",
1156
- "timestamp": "0:00"
1157
- },
1158
- {
1159
- "text": "Message 1 from User 40",
1160
- "timestamp": "1:00"
1161
- },
1162
- {
1163
- "text": "Message 2 from User 40",
1164
- "timestamp": "2:00"
1165
- },
1166
- {
1167
- "text": "Message 3 from User 40",
1168
- "timestamp": "3:00"
1169
- },
1170
- {
1171
- "text": "Message 4 from User 40",
1172
- "timestamp": "4:00"
1173
- }
1174
- ]
1175
- },
1176
- {
1177
- "id": 41,
1178
- "name": "User 41",
1179
- "messages": [
1180
- {
1181
- "text": "Message 0 from User 41",
1182
- "timestamp": "0:00"
1183
- },
1184
- {
1185
- "text": "Message 1 from User 41",
1186
- "timestamp": "1:00"
1187
- },
1188
- {
1189
- "text": "Message 2 from User 41",
1190
- "timestamp": "2:00"
1191
- },
1192
- {
1193
- "text": "Message 3 from User 41",
1194
- "timestamp": "3:00"
1195
- },
1196
- {
1197
- "text": "Message 4 from User 41",
1198
- "timestamp": "4:00"
1199
- },
1200
- {
1201
- "text": "Message 5 from User 41",
1202
- "timestamp": "5:00"
1203
- },
1204
- {
1205
- "text": "Message 6 from User 41",
1206
- "timestamp": "6:00"
1207
- },
1208
- {
1209
- "text": "Message 7 from User 41",
1210
- "timestamp": "7:00"
1211
- },
1212
- {
1213
- "text": "Message 8 from User 41",
1214
- "timestamp": "8:00"
1215
- }
1216
- ]
1217
- },
1218
- {
1219
- "id": 42,
1220
- "name": "User 42",
1221
- "messages": [
1222
- {
1223
- "text": "Message 0 from User 42",
1224
- "timestamp": "0:00"
1225
- },
1226
- {
1227
- "text": "Message 1 from User 42",
1228
- "timestamp": "1:00"
1229
- }
1230
- ]
1231
- },
1232
- {
1233
- "id": 43,
1234
- "name": "User 43",
1235
- "messages": [
1236
- {
1237
- "text": "Message 0 from User 43",
1238
- "timestamp": "0:00"
1239
- },
1240
- {
1241
- "text": "Message 1 from User 43",
1242
- "timestamp": "1:00"
1243
- },
1244
- {
1245
- "text": "Message 2 from User 43",
1246
- "timestamp": "2:00"
1247
- },
1248
- {
1249
- "text": "Message 3 from User 43",
1250
- "timestamp": "3:00"
1251
- },
1252
- {
1253
- "text": "Message 4 from User 43",
1254
- "timestamp": "4:00"
1255
- },
1256
- {
1257
- "text": "Message 5 from User 43",
1258
- "timestamp": "5:00"
1259
- },
1260
- {
1261
- "text": "Message 6 from User 43",
1262
- "timestamp": "6:00"
1263
- },
1264
- {
1265
- "text": "Message 7 from User 43",
1266
- "timestamp": "7:00"
1267
- },
1268
- {
1269
- "text": "Message 8 from User 43",
1270
- "timestamp": "8:00"
1271
- },
1272
- {
1273
- "text": "Message 9 from User 43",
1274
- "timestamp": "9:00"
1275
- }
1276
- ]
1277
- },
1278
- {
1279
- "id": 44,
1280
- "name": "User 44",
1281
- "messages": [
1282
- {
1283
- "text": "Message 0 from User 44",
1284
- "timestamp": "0:00"
1285
- },
1286
- {
1287
- "text": "Message 1 from User 44",
1288
- "timestamp": "1:00"
1289
- },
1290
- {
1291
- "text": "Message 2 from User 44",
1292
- "timestamp": "2:00"
1293
- },
1294
- {
1295
- "text": "Message 3 from User 44",
1296
- "timestamp": "3:00"
1297
- },
1298
- {
1299
- "text": "Message 4 from User 44",
1300
- "timestamp": "4:00"
1301
- }
1302
- ]
1303
- },
1304
- {
1305
- "id": 45,
1306
- "name": "User 45",
1307
- "messages": [
1308
- {
1309
- "text": "Message 0 from User 45",
1310
- "timestamp": "0:00"
1311
- }
1312
- ]
1313
- },
1314
- {
1315
- "id": 46,
1316
- "name": "User 46",
1317
- "messages": [
1318
- {
1319
- "text": "Message 0 from User 46",
1320
- "timestamp": "0:00"
1321
- },
1322
- {
1323
- "text": "Message 1 from User 46",
1324
- "timestamp": "1:00"
1325
- },
1326
- {
1327
- "text": "Message 2 from User 46",
1328
- "timestamp": "2:00"
1329
- },
1330
- {
1331
- "text": "Message 3 from User 46",
1332
- "timestamp": "3:00"
1333
- },
1334
- {
1335
- "text": "Message 4 from User 46",
1336
- "timestamp": "4:00"
1337
- },
1338
- {
1339
- "text": "Message 5 from User 46",
1340
- "timestamp": "5:00"
1341
- },
1342
- {
1343
- "text": "Message 6 from User 46",
1344
- "timestamp": "6:00"
1345
- },
1346
- {
1347
- "text": "Message 7 from User 46",
1348
- "timestamp": "7:00"
1349
- },
1350
- {
1351
- "text": "Message 8 from User 46",
1352
- "timestamp": "8:00"
1353
- },
1354
- {
1355
- "text": "Message 9 from User 46",
1356
- "timestamp": "9:00"
1357
- }
1358
- ]
1359
- },
1360
- {
1361
- "id": 47,
1362
- "name": "User 47",
1363
- "messages": [
1364
- {
1365
- "text": "Message 0 from User 47",
1366
- "timestamp": "0:00"
1367
- },
1368
- {
1369
- "text": "Message 1 from User 47",
1370
- "timestamp": "1:00"
1371
- },
1372
- {
1373
- "text": "Message 2 from User 47",
1374
- "timestamp": "2:00"
1375
- },
1376
- {
1377
- "text": "Message 3 from User 47",
1378
- "timestamp": "3:00"
1379
- },
1380
- {
1381
- "text": "Message 4 from User 47",
1382
- "timestamp": "4:00"
1383
- },
1384
- {
1385
- "text": "Message 5 from User 47",
1386
- "timestamp": "5:00"
1387
- },
1388
- {
1389
- "text": "Message 6 from User 47",
1390
- "timestamp": "6:00"
1391
- },
1392
- {
1393
- "text": "Message 7 from User 47",
1394
- "timestamp": "7:00"
1395
- },
1396
- {
1397
- "text": "Message 8 from User 47",
1398
- "timestamp": "8:00"
1399
- },
1400
- {
1401
- "text": "Message 9 from User 47",
1402
- "timestamp": "9:00"
1403
- }
1404
- ]
1405
- },
1406
- {
1407
- "id": 48,
1408
- "name": "User 48",
1409
- "messages": [
1410
- {
1411
- "text": "Message 0 from User 48",
1412
- "timestamp": "0:00"
1413
- },
1414
- {
1415
- "text": "Message 1 from User 48",
1416
- "timestamp": "1:00"
1417
- },
1418
- {
1419
- "text": "Message 2 from User 48",
1420
- "timestamp": "2:00"
1421
- }
1422
- ]
1423
- },
1424
- {
1425
- "id": 49,
1426
- "name": "User 49",
1427
- "messages": [
1428
- {
1429
- "text": "Message 0 from User 49",
1430
- "timestamp": "0:00"
1431
- },
1432
- {
1433
- "text": "Message 1 from User 49",
1434
- "timestamp": "1:00"
1435
- },
1436
- {
1437
- "text": "Message 2 from User 49",
1438
- "timestamp": "2:00"
1439
- },
1440
- {
1441
- "text": "Message 3 from User 49",
1442
- "timestamp": "3:00"
1443
- },
1444
- {
1445
- "text": "Message 4 from User 49",
1446
- "timestamp": "4:00"
1447
- },
1448
- {
1449
- "text": "Message 5 from User 49",
1450
- "timestamp": "5:00"
1451
- },
1452
- {
1453
- "text": "Message 6 from User 49",
1454
- "timestamp": "6:00"
1455
- }
1456
- ]
1457
- },
1458
- {
1459
- "id": 50,
1460
- "name": "User 50",
1461
- "messages": [
1462
- {
1463
- "text": "Message 0 from User 50",
1464
- "timestamp": "0:00"
1465
- },
1466
- {
1467
- "text": "Message 1 from User 50",
1468
- "timestamp": "1:00"
1469
- },
1470
- {
1471
- "text": "Message 2 from User 50",
1472
- "timestamp": "2:00"
1473
- }
1474
- ]
1475
- },
1476
- {
1477
- "id": 51,
1478
- "name": "User 51",
1479
- "messages": [
1480
- {
1481
- "text": "Message 0 from User 51",
1482
- "timestamp": "0:00"
1483
- },
1484
- {
1485
- "text": "Message 1 from User 51",
1486
- "timestamp": "1:00"
1487
- },
1488
- {
1489
- "text": "Message 2 from User 51",
1490
- "timestamp": "2:00"
1491
- },
1492
- {
1493
- "text": "Message 3 from User 51",
1494
- "timestamp": "3:00"
1495
- },
1496
- {
1497
- "text": "Message 4 from User 51",
1498
- "timestamp": "4:00"
1499
- },
1500
- {
1501
- "text": "Message 5 from User 51",
1502
- "timestamp": "5:00"
1503
- },
1504
- {
1505
- "text": "Message 6 from User 51",
1506
- "timestamp": "6:00"
1507
- }
1508
- ]
1509
- },
1510
- {
1511
- "id": 52,
1512
- "name": "User 52",
1513
- "messages": [
1514
- {
1515
- "text": "Message 0 from User 52",
1516
- "timestamp": "0:00"
1517
- },
1518
- {
1519
- "text": "Message 1 from User 52",
1520
- "timestamp": "1:00"
1521
- },
1522
- {
1523
- "text": "Message 2 from User 52",
1524
- "timestamp": "2:00"
1525
- },
1526
- {
1527
- "text": "Message 3 from User 52",
1528
- "timestamp": "3:00"
1529
- },
1530
- {
1531
- "text": "Message 4 from User 52",
1532
- "timestamp": "4:00"
1533
- },
1534
- {
1535
- "text": "Message 5 from User 52",
1536
- "timestamp": "5:00"
1537
- },
1538
- {
1539
- "text": "Message 6 from User 52",
1540
- "timestamp": "6:00"
1541
- }
1542
- ]
1543
- },
1544
- {
1545
- "id": 53,
1546
- "name": "User 53",
1547
- "messages": [
1548
- {
1549
- "text": "Message 0 from User 53",
1550
- "timestamp": "0:00"
1551
- }
1552
- ]
1553
- },
1554
- {
1555
- "id": 54,
1556
- "name": "User 54",
1557
- "messages": [
1558
- {
1559
- "text": "Message 0 from User 54",
1560
- "timestamp": "0:00"
1561
- },
1562
- {
1563
- "text": "Message 1 from User 54",
1564
- "timestamp": "1:00"
1565
- },
1566
- {
1567
- "text": "Message 2 from User 54",
1568
- "timestamp": "2:00"
1569
- },
1570
- {
1571
- "text": "Message 3 from User 54",
1572
- "timestamp": "3:00"
1573
- },
1574
- {
1575
- "text": "Message 4 from User 54",
1576
- "timestamp": "4:00"
1577
- },
1578
- {
1579
- "text": "Message 5 from User 54",
1580
- "timestamp": "5:00"
1581
- },
1582
- {
1583
- "text": "Message 6 from User 54",
1584
- "timestamp": "6:00"
1585
- },
1586
- {
1587
- "text": "Message 7 from User 54",
1588
- "timestamp": "7:00"
1589
- }
1590
- ]
1591
- },
1592
- {
1593
- "id": 55,
1594
- "name": "User 55",
1595
- "messages": [
1596
- {
1597
- "text": "Message 0 from User 55",
1598
- "timestamp": "0:00"
1599
- },
1600
- {
1601
- "text": "Message 1 from User 55",
1602
- "timestamp": "1:00"
1603
- },
1604
- {
1605
- "text": "Message 2 from User 55",
1606
- "timestamp": "2:00"
1607
- }
1608
- ]
1609
- },
1610
- {
1611
- "id": 56,
1612
- "name": "User 56",
1613
- "messages": [
1614
- {
1615
- "text": "Message 0 from User 56",
1616
- "timestamp": "0:00"
1617
- },
1618
- {
1619
- "text": "Message 1 from User 56",
1620
- "timestamp": "1:00"
1621
- },
1622
- {
1623
- "text": "Message 2 from User 56",
1624
- "timestamp": "2:00"
1625
- },
1626
- {
1627
- "text": "Message 3 from User 56",
1628
- "timestamp": "3:00"
1629
- },
1630
- {
1631
- "text": "Message 4 from User 56",
1632
- "timestamp": "4:00"
1633
- },
1634
- {
1635
- "text": "Message 5 from User 56",
1636
- "timestamp": "5:00"
1637
- },
1638
- {
1639
- "text": "Message 6 from User 56",
1640
- "timestamp": "6:00"
1641
- },
1642
- {
1643
- "text": "Message 7 from User 56",
1644
- "timestamp": "7:00"
1645
- }
1646
- ]
1647
- },
1648
- {
1649
- "id": 57,
1650
- "name": "User 57",
1651
- "messages": [
1652
- {
1653
- "text": "Message 0 from User 57",
1654
- "timestamp": "0:00"
1655
- },
1656
- {
1657
- "text": "Message 1 from User 57",
1658
- "timestamp": "1:00"
1659
- }
1660
- ]
1661
- },
1662
- {
1663
- "id": 58,
1664
- "name": "User 58",
1665
- "messages": [
1666
- {
1667
- "text": "Message 0 from User 58",
1668
- "timestamp": "0:00"
1669
- },
1670
- {
1671
- "text": "Message 1 from User 58",
1672
- "timestamp": "1:00"
1673
- },
1674
- {
1675
- "text": "Message 2 from User 58",
1676
- "timestamp": "2:00"
1677
- }
1678
- ]
1679
- },
1680
- {
1681
- "id": 59,
1682
- "name": "User 59",
1683
- "messages": [
1684
- {
1685
- "text": "Message 0 from User 59",
1686
- "timestamp": "0:00"
1687
- },
1688
- {
1689
- "text": "Message 1 from User 59",
1690
- "timestamp": "1:00"
1691
- },
1692
- {
1693
- "text": "Message 2 from User 59",
1694
- "timestamp": "2:00"
1695
- },
1696
- {
1697
- "text": "Message 3 from User 59",
1698
- "timestamp": "3:00"
1699
- },
1700
- {
1701
- "text": "Message 4 from User 59",
1702
- "timestamp": "4:00"
1703
- },
1704
- {
1705
- "text": "Message 5 from User 59",
1706
- "timestamp": "5:00"
1707
- },
1708
- {
1709
- "text": "Message 6 from User 59",
1710
- "timestamp": "6:00"
1711
- }
1712
- ]
1713
- },
1714
- {
1715
- "id": 60,
1716
- "name": "User 60",
1717
- "messages": [
1718
- {
1719
- "text": "Message 0 from User 60",
1720
- "timestamp": "0:00"
1721
- },
1722
- {
1723
- "text": "Message 1 from User 60",
1724
- "timestamp": "1:00"
1725
- },
1726
- {
1727
- "text": "Message 2 from User 60",
1728
- "timestamp": "2:00"
1729
- },
1730
- {
1731
- "text": "Message 3 from User 60",
1732
- "timestamp": "3:00"
1733
- },
1734
- {
1735
- "text": "Message 4 from User 60",
1736
- "timestamp": "4:00"
1737
- },
1738
- {
1739
- "text": "Message 5 from User 60",
1740
- "timestamp": "5:00"
1741
- },
1742
- {
1743
- "text": "Message 6 from User 60",
1744
- "timestamp": "6:00"
1745
- },
1746
- {
1747
- "text": "Message 7 from User 60",
1748
- "timestamp": "7:00"
1749
- }
1750
- ]
1751
- },
1752
- {
1753
- "id": 61,
1754
- "name": "User 61",
1755
- "messages": [
1756
- {
1757
- "text": "Message 0 from User 61",
1758
- "timestamp": "0:00"
1759
- }
1760
- ]
1761
- },
1762
- {
1763
- "id": 62,
1764
- "name": "User 62",
1765
- "messages": [
1766
- {
1767
- "text": "Message 0 from User 62",
1768
- "timestamp": "0:00"
1769
- }
1770
- ]
1771
- },
1772
- {
1773
- "id": 63,
1774
- "name": "User 63",
1775
- "messages": [
1776
- {
1777
- "text": "Message 0 from User 63",
1778
- "timestamp": "0:00"
1779
- },
1780
- {
1781
- "text": "Message 1 from User 63",
1782
- "timestamp": "1:00"
1783
- },
1784
- {
1785
- "text": "Message 2 from User 63",
1786
- "timestamp": "2:00"
1787
- },
1788
- {
1789
- "text": "Message 3 from User 63",
1790
- "timestamp": "3:00"
1791
- },
1792
- {
1793
- "text": "Message 4 from User 63",
1794
- "timestamp": "4:00"
1795
- },
1796
- {
1797
- "text": "Message 5 from User 63",
1798
- "timestamp": "5:00"
1799
- },
1800
- {
1801
- "text": "Message 6 from User 63",
1802
- "timestamp": "6:00"
1803
- },
1804
- {
1805
- "text": "Message 7 from User 63",
1806
- "timestamp": "7:00"
1807
- },
1808
- {
1809
- "text": "Message 8 from User 63",
1810
- "timestamp": "8:00"
1811
- }
1812
- ]
1813
- },
1814
- {
1815
- "id": 64,
1816
- "name": "User 64",
1817
- "messages": [
1818
- {
1819
- "text": "Message 0 from User 64",
1820
- "timestamp": "0:00"
1821
- },
1822
- {
1823
- "text": "Message 1 from User 64",
1824
- "timestamp": "1:00"
1825
- },
1826
- {
1827
- "text": "Message 2 from User 64",
1828
- "timestamp": "2:00"
1829
- }
1830
- ]
1831
- },
1832
- {
1833
- "id": 65,
1834
- "name": "User 65",
1835
- "messages": [
1836
- {
1837
- "text": "Message 0 from User 65",
1838
- "timestamp": "0:00"
1839
- },
1840
- {
1841
- "text": "Message 1 from User 65",
1842
- "timestamp": "1:00"
1843
- },
1844
- {
1845
- "text": "Message 2 from User 65",
1846
- "timestamp": "2:00"
1847
- },
1848
- {
1849
- "text": "Message 3 from User 65",
1850
- "timestamp": "3:00"
1851
- },
1852
- {
1853
- "text": "Message 4 from User 65",
1854
- "timestamp": "4:00"
1855
- },
1856
- {
1857
- "text": "Message 5 from User 65",
1858
- "timestamp": "5:00"
1859
- }
1860
- ]
1861
- },
1862
- {
1863
- "id": 66,
1864
- "name": "User 66",
1865
- "messages": [
1866
- {
1867
- "text": "Message 0 from User 66",
1868
- "timestamp": "0:00"
1869
- },
1870
- {
1871
- "text": "Message 1 from User 66",
1872
- "timestamp": "1:00"
1873
- },
1874
- {
1875
- "text": "Message 2 from User 66",
1876
- "timestamp": "2:00"
1877
- },
1878
- {
1879
- "text": "Message 3 from User 66",
1880
- "timestamp": "3:00"
1881
- },
1882
- {
1883
- "text": "Message 4 from User 66",
1884
- "timestamp": "4:00"
1885
- },
1886
- {
1887
- "text": "Message 5 from User 66",
1888
- "timestamp": "5:00"
1889
- }
1890
- ]
1891
- },
1892
- {
1893
- "id": 67,
1894
- "name": "User 67",
1895
- "messages": [
1896
- {
1897
- "text": "Message 0 from User 67",
1898
- "timestamp": "0:00"
1899
- }
1900
- ]
1901
- },
1902
- {
1903
- "id": 68,
1904
- "name": "User 68",
1905
- "messages": [
1906
- {
1907
- "text": "Message 0 from User 68",
1908
- "timestamp": "0:00"
1909
- }
1910
- ]
1911
- },
1912
- {
1913
- "id": 69,
1914
- "name": "User 69",
1915
- "messages": [
1916
- {
1917
- "text": "Message 0 from User 69",
1918
- "timestamp": "0:00"
1919
- },
1920
- {
1921
- "text": "Message 1 from User 69",
1922
- "timestamp": "1:00"
1923
- },
1924
- {
1925
- "text": "Message 2 from User 69",
1926
- "timestamp": "2:00"
1927
- }
1928
- ]
1929
- },
1930
- {
1931
- "id": 70,
1932
- "name": "User 70",
1933
- "messages": [
1934
- {
1935
- "text": "Message 0 from User 70",
1936
- "timestamp": "0:00"
1937
- },
1938
- {
1939
- "text": "Message 1 from User 70",
1940
- "timestamp": "1:00"
1941
- }
1942
- ]
1943
- },
1944
- {
1945
- "id": 71,
1946
- "name": "User 71",
1947
- "messages": [
1948
- {
1949
- "text": "Message 0 from User 71",
1950
- "timestamp": "0:00"
1951
- },
1952
- {
1953
- "text": "Message 1 from User 71",
1954
- "timestamp": "1:00"
1955
- },
1956
- {
1957
- "text": "Message 2 from User 71",
1958
- "timestamp": "2:00"
1959
- }
1960
- ]
1961
- },
1962
- {
1963
- "id": 72,
1964
- "name": "User 72",
1965
- "messages": [
1966
- {
1967
- "text": "Message 0 from User 72",
1968
- "timestamp": "0:00"
1969
- },
1970
- {
1971
- "text": "Message 1 from User 72",
1972
- "timestamp": "1:00"
1973
- },
1974
- {
1975
- "text": "Message 2 from User 72",
1976
- "timestamp": "2:00"
1977
- },
1978
- {
1979
- "text": "Message 3 from User 72",
1980
- "timestamp": "3:00"
1981
- },
1982
- {
1983
- "text": "Message 4 from User 72",
1984
- "timestamp": "4:00"
1985
- },
1986
- {
1987
- "text": "Message 5 from User 72",
1988
- "timestamp": "5:00"
1989
- },
1990
- {
1991
- "text": "Message 6 from User 72",
1992
- "timestamp": "6:00"
1993
- },
1994
- {
1995
- "text": "Message 7 from User 72",
1996
- "timestamp": "7:00"
1997
- }
1998
- ]
1999
- },
2000
- {
2001
- "id": 73,
2002
- "name": "User 73",
2003
- "messages": [
2004
- {
2005
- "text": "Message 0 from User 73",
2006
- "timestamp": "0:00"
2007
- },
2008
- {
2009
- "text": "Message 1 from User 73",
2010
- "timestamp": "1:00"
2011
- },
2012
- {
2013
- "text": "Message 2 from User 73",
2014
- "timestamp": "2:00"
2015
- }
2016
- ]
2017
- },
2018
- {
2019
- "id": 74,
2020
- "name": "User 74",
2021
- "messages": [
2022
- {
2023
- "text": "Message 0 from User 74",
2024
- "timestamp": "0:00"
2025
- },
2026
- {
2027
- "text": "Message 1 from User 74",
2028
- "timestamp": "1:00"
2029
- },
2030
- {
2031
- "text": "Message 2 from User 74",
2032
- "timestamp": "2:00"
2033
- }
2034
- ]
2035
- },
2036
- {
2037
- "id": 75,
2038
- "name": "User 75",
2039
- "messages": [
2040
- {
2041
- "text": "Message 0 from User 75",
2042
- "timestamp": "0:00"
2043
- },
2044
- {
2045
- "text": "Message 1 from User 75",
2046
- "timestamp": "1:00"
2047
- },
2048
- {
2049
- "text": "Message 2 from User 75",
2050
- "timestamp": "2:00"
2051
- },
2052
- {
2053
- "text": "Message 3 from User 75",
2054
- "timestamp": "3:00"
2055
- },
2056
- {
2057
- "text": "Message 4 from User 75",
2058
- "timestamp": "4:00"
2059
- },
2060
- {
2061
- "text": "Message 5 from User 75",
2062
- "timestamp": "5:00"
2063
- },
2064
- {
2065
- "text": "Message 6 from User 75",
2066
- "timestamp": "6:00"
2067
- },
2068
- {
2069
- "text": "Message 7 from User 75",
2070
- "timestamp": "7:00"
2071
- },
2072
- {
2073
- "text": "Message 8 from User 75",
2074
- "timestamp": "8:00"
2075
- },
2076
- {
2077
- "text": "Message 9 from User 75",
2078
- "timestamp": "9:00"
2079
- }
2080
- ]
2081
- },
2082
- {
2083
- "id": 76,
2084
- "name": "User 76",
2085
- "messages": [
2086
- {
2087
- "text": "Message 0 from User 76",
2088
- "timestamp": "0:00"
2089
- }
2090
- ]
2091
- },
2092
- {
2093
- "id": 77,
2094
- "name": "User 77",
2095
- "messages": [
2096
- {
2097
- "text": "Message 0 from User 77",
2098
- "timestamp": "0:00"
2099
- },
2100
- {
2101
- "text": "Message 1 from User 77",
2102
- "timestamp": "1:00"
2103
- },
2104
- {
2105
- "text": "Message 2 from User 77",
2106
- "timestamp": "2:00"
2107
- }
2108
- ]
2109
- },
2110
- {
2111
- "id": 78,
2112
- "name": "User 78",
2113
- "messages": [
2114
- {
2115
- "text": "Message 0 from User 78",
2116
- "timestamp": "0:00"
2117
- },
2118
- {
2119
- "text": "Message 1 from User 78",
2120
- "timestamp": "1:00"
2121
- },
2122
- {
2123
- "text": "Message 2 from User 78",
2124
- "timestamp": "2:00"
2125
- }
2126
- ]
2127
- },
2128
- {
2129
- "id": 79,
2130
- "name": "User 79",
2131
- "messages": [
2132
- {
2133
- "text": "Message 0 from User 79",
2134
- "timestamp": "0:00"
2135
- },
2136
- {
2137
- "text": "Message 1 from User 79",
2138
- "timestamp": "1:00"
2139
- },
2140
- {
2141
- "text": "Message 2 from User 79",
2142
- "timestamp": "2:00"
2143
- },
2144
- {
2145
- "text": "Message 3 from User 79",
2146
- "timestamp": "3:00"
2147
- },
2148
- {
2149
- "text": "Message 4 from User 79",
2150
- "timestamp": "4:00"
2151
- },
2152
- {
2153
- "text": "Message 5 from User 79",
2154
- "timestamp": "5:00"
2155
- },
2156
- {
2157
- "text": "Message 6 from User 79",
2158
- "timestamp": "6:00"
2159
- }
2160
- ]
2161
- },
2162
- {
2163
- "id": 80,
2164
- "name": "User 80",
2165
- "messages": [
2166
- {
2167
- "text": "Message 0 from User 80",
2168
- "timestamp": "0:00"
2169
- },
2170
- {
2171
- "text": "Message 1 from User 80",
2172
- "timestamp": "1:00"
2173
- },
2174
- {
2175
- "text": "Message 2 from User 80",
2176
- "timestamp": "2:00"
2177
- }
2178
- ]
2179
- },
2180
- {
2181
- "id": 81,
2182
- "name": "User 81",
2183
- "messages": [
2184
- {
2185
- "text": "Message 0 from User 81",
2186
- "timestamp": "0:00"
2187
- },
2188
- {
2189
- "text": "Message 1 from User 81",
2190
- "timestamp": "1:00"
2191
- },
2192
- {
2193
- "text": "Message 2 from User 81",
2194
- "timestamp": "2:00"
2195
- },
2196
- {
2197
- "text": "Message 3 from User 81",
2198
- "timestamp": "3:00"
2199
- },
2200
- {
2201
- "text": "Message 4 from User 81",
2202
- "timestamp": "4:00"
2203
- },
2204
- {
2205
- "text": "Message 5 from User 81",
2206
- "timestamp": "5:00"
2207
- },
2208
- {
2209
- "text": "Message 6 from User 81",
2210
- "timestamp": "6:00"
2211
- },
2212
- {
2213
- "text": "Message 7 from User 81",
2214
- "timestamp": "7:00"
2215
- },
2216
- {
2217
- "text": "Message 8 from User 81",
2218
- "timestamp": "8:00"
2219
- },
2220
- {
2221
- "text": "Message 9 from User 81",
2222
- "timestamp": "9:00"
2223
- }
2224
- ]
2225
- },
2226
- {
2227
- "id": 82,
2228
- "name": "User 82",
2229
- "messages": [
2230
- {
2231
- "text": "Message 0 from User 82",
2232
- "timestamp": "0:00"
2233
- }
2234
- ]
2235
- },
2236
- {
2237
- "id": 83,
2238
- "name": "User 83",
2239
- "messages": [
2240
- {
2241
- "text": "Message 0 from User 83",
2242
- "timestamp": "0:00"
2243
- },
2244
- {
2245
- "text": "Message 1 from User 83",
2246
- "timestamp": "1:00"
2247
- },
2248
- {
2249
- "text": "Message 2 from User 83",
2250
- "timestamp": "2:00"
2251
- },
2252
- {
2253
- "text": "Message 3 from User 83",
2254
- "timestamp": "3:00"
2255
- },
2256
- {
2257
- "text": "Message 4 from User 83",
2258
- "timestamp": "4:00"
2259
- },
2260
- {
2261
- "text": "Message 5 from User 83",
2262
- "timestamp": "5:00"
2263
- }
2264
- ]
2265
- },
2266
- {
2267
- "id": 84,
2268
- "name": "User 84",
2269
- "messages": [
2270
- {
2271
- "text": "Message 0 from User 84",
2272
- "timestamp": "0:00"
2273
- },
2274
- {
2275
- "text": "Message 1 from User 84",
2276
- "timestamp": "1:00"
2277
- },
2278
- {
2279
- "text": "Message 2 from User 84",
2280
- "timestamp": "2:00"
2281
- },
2282
- {
2283
- "text": "Message 3 from User 84",
2284
- "timestamp": "3:00"
2285
- },
2286
- {
2287
- "text": "Message 4 from User 84",
2288
- "timestamp": "4:00"
2289
- },
2290
- {
2291
- "text": "Message 5 from User 84",
2292
- "timestamp": "5:00"
2293
- },
2294
- {
2295
- "text": "Message 6 from User 84",
2296
- "timestamp": "6:00"
2297
- },
2298
- {
2299
- "text": "Message 7 from User 84",
2300
- "timestamp": "7:00"
2301
- }
2302
- ]
2303
- },
2304
- {
2305
- "id": 85,
2306
- "name": "User 85",
2307
- "messages": [
2308
- {
2309
- "text": "Message 0 from User 85",
2310
- "timestamp": "0:00"
2311
- },
2312
- {
2313
- "text": "Message 1 from User 85",
2314
- "timestamp": "1:00"
2315
- },
2316
- {
2317
- "text": "Message 2 from User 85",
2318
- "timestamp": "2:00"
2319
- },
2320
- {
2321
- "text": "Message 3 from User 85",
2322
- "timestamp": "3:00"
2323
- },
2324
- {
2325
- "text": "Message 4 from User 85",
2326
- "timestamp": "4:00"
2327
- },
2328
- {
2329
- "text": "Message 5 from User 85",
2330
- "timestamp": "5:00"
2331
- }
2332
- ]
2333
- },
2334
- {
2335
- "id": 86,
2336
- "name": "User 86",
2337
- "messages": [
2338
- {
2339
- "text": "Message 0 from User 86",
2340
- "timestamp": "0:00"
2341
- },
2342
- {
2343
- "text": "Message 1 from User 86",
2344
- "timestamp": "1:00"
2345
- },
2346
- {
2347
- "text": "Message 2 from User 86",
2348
- "timestamp": "2:00"
2349
- },
2350
- {
2351
- "text": "Message 3 from User 86",
2352
- "timestamp": "3:00"
2353
- },
2354
- {
2355
- "text": "Message 4 from User 86",
2356
- "timestamp": "4:00"
2357
- },
2358
- {
2359
- "text": "Message 5 from User 86",
2360
- "timestamp": "5:00"
2361
- },
2362
- {
2363
- "text": "Message 6 from User 86",
2364
- "timestamp": "6:00"
2365
- },
2366
- {
2367
- "text": "Message 7 from User 86",
2368
- "timestamp": "7:00"
2369
- },
2370
- {
2371
- "text": "Message 8 from User 86",
2372
- "timestamp": "8:00"
2373
- }
2374
- ]
2375
- },
2376
- {
2377
- "id": 87,
2378
- "name": "User 87",
2379
- "messages": [
2380
- {
2381
- "text": "Message 0 from User 87",
2382
- "timestamp": "0:00"
2383
- },
2384
- {
2385
- "text": "Message 1 from User 87",
2386
- "timestamp": "1:00"
2387
- },
2388
- {
2389
- "text": "Message 2 from User 87",
2390
- "timestamp": "2:00"
2391
- },
2392
- {
2393
- "text": "Message 3 from User 87",
2394
- "timestamp": "3:00"
2395
- },
2396
- {
2397
- "text": "Message 4 from User 87",
2398
- "timestamp": "4:00"
2399
- },
2400
- {
2401
- "text": "Message 5 from User 87",
2402
- "timestamp": "5:00"
2403
- },
2404
- {
2405
- "text": "Message 6 from User 87",
2406
- "timestamp": "6:00"
2407
- },
2408
- {
2409
- "text": "Message 7 from User 87",
2410
- "timestamp": "7:00"
2411
- }
2412
- ]
2413
- },
2414
- {
2415
- "id": 88,
2416
- "name": "User 88",
2417
- "messages": [
2418
- {
2419
- "text": "Message 0 from User 88",
2420
- "timestamp": "0:00"
2421
- },
2422
- {
2423
- "text": "Message 1 from User 88",
2424
- "timestamp": "1:00"
2425
- },
2426
- {
2427
- "text": "Message 2 from User 88",
2428
- "timestamp": "2:00"
2429
- },
2430
- {
2431
- "text": "Message 3 from User 88",
2432
- "timestamp": "3:00"
2433
- },
2434
- {
2435
- "text": "Message 4 from User 88",
2436
- "timestamp": "4:00"
2437
- },
2438
- {
2439
- "text": "Message 5 from User 88",
2440
- "timestamp": "5:00"
2441
- },
2442
- {
2443
- "text": "Message 6 from User 88",
2444
- "timestamp": "6:00"
2445
- },
2446
- {
2447
- "text": "Message 7 from User 88",
2448
- "timestamp": "7:00"
2449
- }
2450
- ]
2451
- },
2452
- {
2453
- "id": 89,
2454
- "name": "User 89",
2455
- "messages": [
2456
- {
2457
- "text": "Message 0 from User 89",
2458
- "timestamp": "0:00"
2459
- },
2460
- {
2461
- "text": "Message 1 from User 89",
2462
- "timestamp": "1:00"
2463
- },
2464
- {
2465
- "text": "Message 2 from User 89",
2466
- "timestamp": "2:00"
2467
- },
2468
- {
2469
- "text": "Message 3 from User 89",
2470
- "timestamp": "3:00"
2471
- },
2472
- {
2473
- "text": "Message 4 from User 89",
2474
- "timestamp": "4:00"
2475
- },
2476
- {
2477
- "text": "Message 5 from User 89",
2478
- "timestamp": "5:00"
2479
- },
2480
- {
2481
- "text": "Message 6 from User 89",
2482
- "timestamp": "6:00"
2483
- }
2484
- ]
2485
- },
2486
- {
2487
- "id": 90,
2488
- "name": "User 90",
2489
- "messages": [
2490
- {
2491
- "text": "Message 0 from User 90",
2492
- "timestamp": "0:00"
2493
- },
2494
- {
2495
- "text": "Message 1 from User 90",
2496
- "timestamp": "1:00"
2497
- }
2498
- ]
2499
- },
2500
- {
2501
- "id": 91,
2502
- "name": "User 91",
2503
- "messages": [
2504
- {
2505
- "text": "Message 0 from User 91",
2506
- "timestamp": "0:00"
2507
- },
2508
- {
2509
- "text": "Message 1 from User 91",
2510
- "timestamp": "1:00"
2511
- }
2512
- ]
2513
- },
2514
- {
2515
- "id": 92,
2516
- "name": "User 92",
2517
- "messages": [
2518
- {
2519
- "text": "Message 0 from User 92",
2520
- "timestamp": "0:00"
2521
- },
2522
- {
2523
- "text": "Message 1 from User 92",
2524
- "timestamp": "1:00"
2525
- },
2526
- {
2527
- "text": "Message 2 from User 92",
2528
- "timestamp": "2:00"
2529
- },
2530
- {
2531
- "text": "Message 3 from User 92",
2532
- "timestamp": "3:00"
2533
- }
2534
- ]
2535
- },
2536
- {
2537
- "id": 93,
2538
- "name": "User 93",
2539
- "messages": [
2540
- {
2541
- "text": "Message 0 from User 93",
2542
- "timestamp": "0:00"
2543
- },
2544
- {
2545
- "text": "Message 1 from User 93",
2546
- "timestamp": "1:00"
2547
- },
2548
- {
2549
- "text": "Message 2 from User 93",
2550
- "timestamp": "2:00"
2551
- },
2552
- {
2553
- "text": "Message 3 from User 93",
2554
- "timestamp": "3:00"
2555
- },
2556
- {
2557
- "text": "Message 4 from User 93",
2558
- "timestamp": "4:00"
2559
- },
2560
- {
2561
- "text": "Message 5 from User 93",
2562
- "timestamp": "5:00"
2563
- },
2564
- {
2565
- "text": "Message 6 from User 93",
2566
- "timestamp": "6:00"
2567
- }
2568
- ]
2569
- },
2570
- {
2571
- "id": 94,
2572
- "name": "User 94",
2573
- "messages": [
2574
- {
2575
- "text": "Message 0 from User 94",
2576
- "timestamp": "0:00"
2577
- },
2578
- {
2579
- "text": "Message 1 from User 94",
2580
- "timestamp": "1:00"
2581
- },
2582
- {
2583
- "text": "Message 2 from User 94",
2584
- "timestamp": "2:00"
2585
- },
2586
- {
2587
- "text": "Message 3 from User 94",
2588
- "timestamp": "3:00"
2589
- },
2590
- {
2591
- "text": "Message 4 from User 94",
2592
- "timestamp": "4:00"
2593
- },
2594
- {
2595
- "text": "Message 5 from User 94",
2596
- "timestamp": "5:00"
2597
- },
2598
- {
2599
- "text": "Message 6 from User 94",
2600
- "timestamp": "6:00"
2601
- },
2602
- {
2603
- "text": "Message 7 from User 94",
2604
- "timestamp": "7:00"
2605
- }
2606
- ]
2607
- },
2608
- {
2609
- "id": 95,
2610
- "name": "User 95",
2611
- "messages": [
2612
- {
2613
- "text": "Message 0 from User 95",
2614
- "timestamp": "0:00"
2615
- },
2616
- {
2617
- "text": "Message 1 from User 95",
2618
- "timestamp": "1:00"
2619
- },
2620
- {
2621
- "text": "Message 2 from User 95",
2622
- "timestamp": "2:00"
2623
- },
2624
- {
2625
- "text": "Message 3 from User 95",
2626
- "timestamp": "3:00"
2627
- },
2628
- {
2629
- "text": "Message 4 from User 95",
2630
- "timestamp": "4:00"
2631
- }
2632
- ]
2633
- },
2634
- {
2635
- "id": 96,
2636
- "name": "User 96",
2637
- "messages": [
2638
- {
2639
- "text": "Message 0 from User 96",
2640
- "timestamp": "0:00"
2641
- },
2642
- {
2643
- "text": "Message 1 from User 96",
2644
- "timestamp": "1:00"
2645
- },
2646
- {
2647
- "text": "Message 2 from User 96",
2648
- "timestamp": "2:00"
2649
- }
2650
- ]
2651
- },
2652
- {
2653
- "id": 97,
2654
- "name": "User 97",
2655
- "messages": [
2656
- {
2657
- "text": "Message 0 from User 97",
2658
- "timestamp": "0:00"
2659
- },
2660
- {
2661
- "text": "Message 1 from User 97",
2662
- "timestamp": "1:00"
2663
- },
2664
- {
2665
- "text": "Message 2 from User 97",
2666
- "timestamp": "2:00"
2667
- },
2668
- {
2669
- "text": "Message 3 from User 97",
2670
- "timestamp": "3:00"
2671
- },
2672
- {
2673
- "text": "Message 4 from User 97",
2674
- "timestamp": "4:00"
2675
- }
2676
- ]
2677
- },
2678
- {
2679
- "id": 98,
2680
- "name": "User 98",
2681
- "messages": [
2682
- {
2683
- "text": "Message 0 from User 98",
2684
- "timestamp": "0:00"
2685
- },
2686
- {
2687
- "text": "Message 1 from User 98",
2688
- "timestamp": "1:00"
2689
- },
2690
- {
2691
- "text": "Message 2 from User 98",
2692
- "timestamp": "2:00"
2693
- }
2694
- ]
2695
- },
2696
- {
2697
- "id": 99,
2698
- "name": "User 99",
2699
- "messages": [
2700
- {
2701
- "text": "Message 0 from User 99",
2702
- "timestamp": "0:00"
2703
- },
2704
- {
2705
- "text": "Message 1 from User 99",
2706
- "timestamp": "1:00"
2707
- },
2708
- {
2709
- "text": "Message 2 from User 99",
2710
- "timestamp": "2:00"
2711
- },
2712
- {
2713
- "text": "Message 3 from User 99",
2714
- "timestamp": "3:00"
2715
- },
2716
- {
2717
- "text": "Message 4 from User 99",
2718
- "timestamp": "4:00"
2719
- },
2720
- {
2721
- "text": "Message 5 from User 99",
2722
- "timestamp": "5:00"
2723
- },
2724
- {
2725
- "text": "Message 6 from User 99",
2726
- "timestamp": "6:00"
2727
- }
2728
- ]
2729
- }
2730
- ]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
workspace/main.py DELETED
@@ -1 +0,0 @@
1
- print("Hello, World!")
 
 
workspace/mydatabase.duckdb DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:3c905848f59a47a456f66dac50c4a937a17e065642c3ccd221cb09dd535ee1d7
3
- size 274432
 
 
 
 
workspace/new_file.txt DELETED
File without changes
workspace/output.txt DELETED
@@ -1 +0,0 @@
1
- Execution successful!
 
 
workspace/product_info.json DELETED
@@ -1,12 +0,0 @@
1
- {
2
- "ブランド名": "",
3
- "モデル名": "",
4
- "型番や品番": "",
5
- "購入店": "",
6
- "購入時期": "",
7
- "購入金額": "",
8
- "付属品": "",
9
- "コンディション": "",
10
- "貴金属品位": "",
11
- "貴金属重量": ""
12
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
workspace/products.csv DELETED
@@ -1,5 +0,0 @@
1
- id,name,price
2
- 1,Product A,10.99
3
- 2,Product B,9.99
4
- 3,Product C,12.99
5
- 4,Product D,8.99
 
 
 
 
 
 
workspace/profiles.db DELETED
Binary file (12.3 kB)
 
workspace/profiles.json DELETED
@@ -1 +0,0 @@
1
- []
 
 
workspace/quick_sort.py DELETED
File without changes
workspace/reports.csv DELETED
@@ -1,4 +0,0 @@
1
- condition,price
2
- Excellent,1.0
3
- Fair,0.5
4
- Good,0.8
 
 
 
 
 
workspace/sample.html DELETED
@@ -1 +0,0 @@
1
- <!DOCTYPE html><html><head><title>Sample HTML File</title></head><body><h1>Welcome to my sample HTML page!</h1></body></html>
 
 
workspace/sample.txt DELETED
@@ -1 +0,0 @@
1
- Hello, World!
 
 
workspace/script.py DELETED
File without changes
workspace/system_document.md DELETED
@@ -1 +0,0 @@
1
- # System Document\n======================\n\nThis is a system document for the line image search system.
 
 
workspace/test.txt DELETED
@@ -1 +0,0 @@
1
- This is a test file.
 
 
workspace/test_file.txt DELETED
File without changes
workspace/users.db DELETED
Binary file (12.3 kB)
 
workspace/wandb_sample.py DELETED
File without changes