summarizers
is package for controllable summarization based on CTRLsum.pip install summarizers
>>> from summarizers import Summarizers
>>> summ = Summarizers()
normal
, paper
, patent
].normal
.
>>> from summarizers import Summarizers
>>> summ = Summarizers('normal') # <-- default.
>>> summ = Summarizers('paper')
>>> summ = Summarizers('patent')
device='cuda'
.
>>> from summarizers import Summarizers
>>> summ = Summarizers('normal', device='cuda')
>>> contents = """
Tunip is the Octonauts' head cook and gardener.
He is a Vegimal, a half-animal, half-vegetable creature capable of breathing on land as well as underwater.
Tunip is very childish and innocent, always wanting to help the Octonauts in any way he can.
He is the smallest main character in the Octonauts crew.
"""
>>> summ(contents)
'Tunip is a Vegimal, a half-animal, half-vegetable creature'
>>> summ(contents, query="main character of Octonauts")
'Tunip is the smallest main character in the Octonauts crew.'
>>> summ(contents, query="What is Vegimal?")
'Half-animal, half-vegetable'
question_detection=False
.
>>> summ(contents, query="SOME_QUERY", question_detection=False)
prompt
.>>> summ(contents, prompt="Q:Who is Tunip? A:")
"Q:Who is Tunip? A: Tunip is the Octonauts' head"
query
and prompt
.>>> summ(contents, query="personality of Tunip", prompt="Tunip is very")
"Tunip is very childish and innocent, always wanting to help the Octonauts."
summarizers
support variety of options for decoding strategy.
>>> summ(
... contents=contents,
... num_beams=10,
... top_k=30,
... top_p=0.85,
... no_repeat_ngram_size=3,
... length_penalty=1.2,
... )
<br>
## License
Copyright 2021 Hyunwoong Ko.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.