colab 실행 중 Time-out

colab 2024. 2. 20. 13:44

구글 코랩(colab)은 90분 동안 아무런 interaction이 없는 경우 연결이 끊겨버리고 학습이 중단될수 있다.

이런 경우를 방지하는 방법은 90분안에 아무 interaction을 하면 될것이다.

F12를 누르거나 Ctrl+shift+i를 누르면 개발자 콘솔이 나타난다.

개발자 콘솔 가장 밑에 코드를 입력할 수 있는 창이있다. 이곳에 아래 JS 코드를 입력하면 된다.

 

function ClickConnect(){
    console.log("코랩 연결 끊김 방지");
    document.querySelector("colab-toolbar-button#connect").click()
}
setInterval(ClickConnect, 60 * 1000)



1분마다 ClickConnect() 함수를 실행시킨다.

 

 

 

===================

 

https://research.google.com/colaboratory/faq.html#idle-timeouts
여기엔 최대 12시간이라고 써있지만 한 3시간 정도만 지나도 런타임 연결이 끊어져 있다.

90분이라고 생각해야될 듯.

Posted by 캬웃
,

다섯째 날.

AI 일기 2024. 2. 19. 16:45

허깅페이스에 파인튜닝한 걸 올림

리더보드 평가에 모델 찾을 수 없다고 에러남.

코랩에서도 평가 돌렸는데 아래와 같이 에러남.

 

2024-02-19 06:30:21.446937: E external/local_xla/xla/stream_executor/cuda/cuda_dnn.cc:9261] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered
2024-02-19 06:30:21.446989: E external/local_xla/xla/stream_executor/cuda/cuda_fft.cc:607] Unable to register cuFFT factory: Attempting to register factory for plugin cuFFT when one has already been registered
2024-02-19 06:30:21.448322: E external/local_xla/xla/stream_executor/cuda/cuda_blas.cc:1515] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered
2024-02-19 06:30:22.563854: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT
2024-02-19:06:30:24,734 INFO     [__main__.py:200] Verbosity set to INFO
2024-02-19:06:30:24,734 INFO     [__init__.py:358] lm_eval.tasks.initialize_tasks() is deprecated and no longer necessary. It will be removed in v0.4.2 release. TaskManager will instead be used.
2024-02-19:06:30:35,622 INFO     [__main__.py:276] Selected Tasks: ['boolq', 'copa', 'hellaswag', 'mmlu']
2024-02-19:06:30:35,623 INFO     [__main__.py:277] Loading selected tasks...
2024-02-19:06:30:35,623 INFO     [evaluator.py:95] Setting random seed to 0
2024-02-19:06:30:35,623 INFO     [evaluator.py:99] Setting numpy seed to 1234
2024-02-19:06:30:35,623 INFO     [evaluator.py:103] Setting torch manual seed to 1234
2024-02-19:06:30:35,648 INFO     [huggingface.py:161] Using device 'cuda:0'
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/dist-packages/huggingface_hub/utils/_errors.py", line 286, in hf_raise_for_status
    response.raise_for_status()
  File "/usr/local/lib/python3.10/dist-packages/requests/models.py", line 1021, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 404 Client Error: Not Found for url: https://huggingface.co/cashbook/SOLAR-Platypus-10.7B-v1-kjw/resolve/main/config.json

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/dist-packages/transformers/utils/hub.py", line 430, in cached_file
    resolved_file = hf_hub_download(
  File "/usr/local/lib/python3.10/dist-packages/huggingface_hub/utils/_validators.py", line 118, in _inner_fn
    return fn(*args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/huggingface_hub/file_download.py", line 1238, in hf_hub_download
    metadata = get_hf_file_metadata(
  File "/usr/local/lib/python3.10/dist-packages/huggingface_hub/utils/_validators.py", line 118, in _inner_fn
    return fn(*args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/huggingface_hub/file_download.py", line 1631, in get_hf_file_metadata
    r = _request_wrapper(
  File "/usr/local/lib/python3.10/dist-packages/huggingface_hub/file_download.py", line 385, in _request_wrapper
    response = _request_wrapper(
  File "/usr/local/lib/python3.10/dist-packages/huggingface_hub/file_download.py", line 409, in _request_wrapper
    hf_raise_for_status(response)
  File "/usr/local/lib/python3.10/dist-packages/huggingface_hub/utils/_errors.py", line 296, in hf_raise_for_status
    raise EntryNotFoundError(message, response) from e
huggingface_hub.utils._errors.EntryNotFoundError: 404 Client Error. (Request ID: Root=1-65d2f58b-6bbe66047d0d87c019aa16ba;557e17ef-bc31-490e-bd8b-52d4921f268b)

Entry Not Found for url: https://huggingface.co/cashbook/SOLAR-Platypus-10.7B-v1-kjw/resolve/main/config.json.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/bin/lm_eval", line 8, in <module>
    sys.exit(cli_evaluate())
  File "/content/drive/MyDrive/FastCampus-LLM/lm-evaluation-harness/lm_eval/__main__.py", line 279, in cli_evaluate
    results = evaluator.simple_evaluate(
  File "/content/drive/MyDrive/FastCampus-LLM/lm-evaluation-harness/lm_eval/utils.py", line 288, in _wrapper
    return fn(*args, **kwargs)
  File "/content/drive/MyDrive/FastCampus-LLM/lm-evaluation-harness/lm_eval/evaluator.py", line 123, in simple_evaluate
    lm = lm_eval.api.registry.get_model(model).create_from_arg_string(
  File "/content/drive/MyDrive/FastCampus-LLM/lm-evaluation-harness/lm_eval/api/model.py", line 134, in create_from_arg_string
    return cls(**args, **args2)
  File "/content/drive/MyDrive/FastCampus-LLM/lm-evaluation-harness/lm_eval/models/huggingface.py", line 187, in __init__
    self._get_config(
  File "/content/drive/MyDrive/FastCampus-LLM/lm-evaluation-harness/lm_eval/models/huggingface.py", line 444, in _get_config
    self._config = transformers.AutoConfig.from_pretrained(
  File "/usr/local/lib/python3.10/dist-packages/transformers/models/auto/configuration_auto.py", line 1048, in from_pretrained
    config_dict, unused_kwargs = PretrainedConfig.get_config_dict(pretrained_model_name_or_path, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/transformers/configuration_utils.py", line 622, in get_config_dict
    config_dict, kwargs = cls._get_config_dict(pretrained_model_name_or_path, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/transformers/configuration_utils.py", line 677, in _get_config_dict
    resolved_config_file = cached_file(
  File "/usr/local/lib/python3.10/dist-packages/transformers/utils/hub.py", line 481, in cached_file
    raise EnvironmentError(
OSError: cashbook/SOLAR-Platypus-10.7B-v1-kjw does not appear to have a file named config.json. Checkout 'https://huggingface.co/cashbook/SOLAR-Platypus-10.7B-v1-kjw/main' for available files.

 

> config.json을 찾을 수 없다는 메시지.

> 드라이브엔 config.json이 있음. 비교해보니 이거 외엔 다 허깅페이스에 업로드 되어있음.

> 처음부터 다시 돌릴 생각하니 까마득함.

> 수동으로 올릴 수 있나? 확인. 가능하구나!

> config.json만 올리고, 돌려보니 코랩과 허깅페이스 둘 다 문제없이 돌아가는 중.

 

허깅페이스에 제출했더니

Citation
Copy the following snippet to cite these results

@misc{open-llm-leaderboard,
  author = {Edward Beeching and Clémentine Fourrier and Nathan Habib and Sheon Han and Nathan Lambert and Nazneen Rajani and Omar Sanseviero and Lewis Tunstall and Thomas Wolf},
  title = {Open LLM Leaderboard},
  year = {2023},
  publisher = {Hugging Face},
  howpublished = "\url{https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard}"
}
@software{eval-harness,
  author       = {Gao, Leo and
                  Tow, Jonathan and
                  Biderman, Stella and
                  Black, Sid and
                  DiPofi, Anthony and
                  Foster, Charles and
                  Golding, Laurence and
                  Hsu, Jeffrey and
                  McDonell, Kyle and
                  Muennighoff, Niklas and
                  Phang, Jason and
                  Reynolds, Laria and
                  Tang, Eric and
                  Thite, Anish and
                  Wang, Ben and
                  Wang, Kevin and
                  Zou, Andy},
  title        = {A framework for few-shot language model evaluation},
  month        = sep,
  year         = 2021,
  publisher    = {Zenodo},
  version      = {v0.0.1},
  doi          = {10.5281/zenodo.5371628},
  url          = {https://doi.org/10.5281/zenodo.5371628}
}
@misc{clark2018think,
      title={Think you have Solved Question Answering? Try ARC, the AI2 Reasoning Challenge},
      author={Peter Clark and Isaac Cowhey and Oren Etzioni and Tushar Khot and Ashish Sabharwal and Carissa Schoenick and Oyvind Tafjord},
      year={2018},
      eprint={1803.05457},
      archivePrefix={arXiv},
      primaryClass={cs.AI}
}
@misc{zellers2019hellaswag,
      title={HellaSwag: Can a Machine Really Finish Your Sentence?},
      author={Rowan Zellers and Ari Holtzman and Yonatan Bisk and Ali Farhadi and Yejin Choi},
      year={2019},
      eprint={1905.07830},
      archivePrefix={arXiv},
      primaryClass={cs.CL}
}
@misc{hendrycks2021measuring,
      title={Measuring Massive Multitask Language Understanding},
      author={Dan Hendrycks and Collin Burns and Steven Basart and Andy Zou and Mantas Mazeika and Dawn Song and Jacob Steinhardt},
      year={2021},
      eprint={2009.03300},
      archivePrefix={arXiv},
      primaryClass={cs.CY}
}
@misc{lin2022truthfulqa,
      title={TruthfulQA: Measuring How Models Mimic Human Falsehoods},
      author={Stephanie Lin and Jacob Hilton and Owain Evans},
      year={2022},
      eprint={2109.07958},
      archivePrefix={arXiv},
      primaryClass={cs.CL}
}
@misc{DBLP:journals/corr/abs-1907-10641,
      title={{WINOGRANDE:} An Adversarial Winograd Schema Challenge at Scale},
      author={Keisuke Sakaguchi and Ronan Le Bras and Chandra Bhagavatula and Yejin Choi},
      year={2019},
      eprint={1907.10641},
      archivePrefix={arXiv},
      primaryClass={cs.CL}
}
@misc{DBLP:journals/corr/abs-2110-14168,
      title={Training Verifiers to Solve Math Word Problems},
      author={Karl Cobbe and
                  Vineet Kosaraju and
                  Mohammad Bavarian and
                  Mark Chen and
                  Heewoo Jun and
                  Lukasz Kaiser and
                  Matthias Plappert and
                  Jerry Tworek and
                  Jacob Hilton and
                  Reiichiro Nakano and
                  Christopher Hesse and
                  John Schulman},
      year={2021},
      eprint={2110.14168},
      archivePrefix={arXiv},
      primaryClass={cs.CL}
}

 

라고 뜨는데 뭐에 쓰는 거임?

 

 

구글에서 영어 이력서 달라고 연락옴.

주말 동안 영어로 CoverLetter 1장, Resume 2장 작성.

오늘 집에 가서 수정해서 보내야겠다.

'AI 일기' 카테고리의 다른 글

넷째 날.  (0) 2024.02.07
셋째 날.  (0) 2024.02.05
둘째 날.  (0) 2024.02.03
첫째 날.  (0) 2024.01.22
Posted by 캬웃
,

넷째 날.

AI 일기 2024. 2. 7. 21:11

LLM 학습을 위한 방법

 - Quantization 양자화

 - Pruning 가지치기

 - Distilation 지식-직류화 (LLM > sLLM)

 

Fine-tuning을 하는 기법

 - Instruction-tuning : task에 대한 instruction을 제공해서 LLM의 이해를 돕는다.(이 기법을 쓰지 않으면 학습이 어렵다.)

 

Fine-tuning을 위한 기법을 좀 보고

코랩에서 Fine-tuning 코딩을 하자.

 

이번 설까지 AI 개발자로 몇군데 지원하자.

2월 안에 이직은 쇼부 봐야.

 

AI에 몸을 던지고자 하는데,

받아줄 분 계시나요~?

( k2mj5ngw55@gmail.com )

'AI 일기' 카테고리의 다른 글

다섯째 날.  (0) 2024.02.19
셋째 날.  (0) 2024.02.05
둘째 날.  (0) 2024.02.03
첫째 날.  (0) 2024.01.22
Posted by 캬웃
,