Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BIT-484] Server/validator improvements (TextCausalLMNext) #852

Merged
merged 42 commits into from
Jul 26, 2022

Conversation

opentaco
Copy link
Contributor

@opentaco opentaco commented Jul 24, 2022

BIT-484 Server/validator improvements (TextCausalLMNext)

Various synapse improvements, highlights include:

  1. Critical tokenizer fixes like setting server tokenizer padding_side.
  2. Support for facebook/opt-* models and other non-fast tokenizer models.
  3. Validator checks for NaNs in neuron_stats.
  4. Gradual EMA from zero for neuron_stats used for weighting (to improve mean estimation).
  5. Added normal validation loss to TextCausalLMNext.

Tested branch successfully for core_server and core_validator on CUDA, including running facebook/opt-13b.

Generative default expects most recent token on right-hand side with padding on left. huggingface/transformers#10552
Do not reuse model outputs from TextCausalLM, since the padding side differs.
New axons will gradually increase in weighting as the number of successfully responded queries grows. This ensures that sufficient observations are averaged before weighting to address potentially noisy validation measures.
…into BIT-484-7-TextCausalLMNext-dev

# Conflicts:
#	bittensor/_neuron/text/core_server/nucleus_impl.py
More models, like OPT, are supported by TextCausalLMNext than TextCausalLM that requires fast tokenizers. Validation table sorted according to more populated synapse provides better view.
Otherwise some synapses like TextSeq2Seq with model_output=None will overwrite previous (potentially) non-None model_output.
@coveralls
Copy link

coveralls commented Jul 24, 2022

Pull Request Test Coverage Report for Build 0febfdd3-ca3e-4d28-b483-65e1b15a6c30

  • 42 of 50 (84.0%) changed or added relevant lines in 1 file are covered.
  • 1 unchanged line in 1 file lost coverage.
  • Overall coverage decreased (-0.2%) to 64.806%

Changes Missing Coverage Covered Lines Changed/Added Lines %
bittensor/utils/tokenizer_utils.py 42 50 84.0%
Files with Coverage Reduction New Missed Lines %
bittensor/utils/tokenizer_utils.py 1 85.81%
Totals Coverage Status
Change from base Build 5ab03dc9-731c-4622-bbe5-c614b3b857bc: -0.2%
Covered Lines: 3924
Relevant Lines: 6055

💛 - Coveralls

Copy link
Contributor

@Eugene-hu Eugene-hu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Amazing work!

@opentaco opentaco merged commit 23b004f into Synapse Jul 26, 2022
@ifrit98 ifrit98 deleted the BIT-484-7-TextCausalLMNext-dev branch May 24, 2023 14:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants