Add context_instruct to API. Load default model instruction template … (#2688)

This commit is contained in:
atriantafy 2023-07-12 04:01:03 +01:00 committed by GitHub
parent 324e45b848
commit d9fabdde40
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 37 additions and 32 deletions

View File

@ -23,7 +23,8 @@ async def run(user_input, history):
'history': history, 'history': history,
'mode': 'instruct', # Valid options: 'chat', 'chat-instruct', 'instruct' 'mode': 'instruct', # Valid options: 'chat', 'chat-instruct', 'instruct'
'character': 'Example', 'character': 'Example',
'instruction_template': 'Vicuna-v1.1', 'instruction_template': 'Vicuna-v1.1', # Will get autodetected if unset
# 'context_instruct': '', # Optional
'your_name': 'You', 'your_name': 'You',
'regenerate': False, 'regenerate': False,

View File

@ -17,7 +17,8 @@ def run(user_input, history):
'history': history, 'history': history,
'mode': 'instruct', # Valid options: 'chat', 'chat-instruct', 'instruct' 'mode': 'instruct', # Valid options: 'chat', 'chat-instruct', 'instruct'
'character': 'Example', 'character': 'Example',
'instruction_template': 'Vicuna-v1.1', 'instruction_template': 'Vicuna-v1.1', # Will get autodetected if unset
# 'context_instruct': '', # Optional
'your_name': 'You', 'your_name': 'You',
'regenerate': False, 'regenerate': False,

View File

@ -4,6 +4,7 @@ import requests
HOST = '0.0.0.0:5000' HOST = '0.0.0.0:5000'
def generate(prompt, tokens=200): def generate(prompt, tokens=200):
request = {'prompt': prompt, 'max_new_tokens': tokens} request = {'prompt': prompt, 'max_new_tokens': tokens}
response = requests.post(f'http://{HOST}/api/v1/generate', json=request) response = requests.post(f'http://{HOST}/api/v1/generate', json=request)
@ -124,7 +125,6 @@ def complex_model_load(model):
else: else:
req['args']['rwkv_strategy'] = 'cuda f16' # 24GB req['args']['rwkv_strategy'] = 'cuda f16' # 24GB
return model_api(req) return model_api(req)

View File

@ -59,7 +59,10 @@ def build_parameters(body, chat=False):
if chat: if chat:
character = body.get('character') character = body.get('character')
instruction_template = body.get('instruction_template') instruction_template = body.get('instruction_template', shared.settings['instruction_template'])
if str(instruction_template) == "None":
instruction_template = "Vicuna-v1.1"
name1, name2, _, greeting, context, _ = load_character_memoized(character, str(body.get('your_name', shared.settings['name1'])), shared.settings['name2'], instruct=False) name1, name2, _, greeting, context, _ = load_character_memoized(character, str(body.get('your_name', shared.settings['name1'])), shared.settings['name2'], instruct=False)
name1_instruct, name2_instruct, _, _, context_instruct, turn_template = load_character_memoized(instruction_template, '', '', instruct=True) name1_instruct, name2_instruct, _, _, context_instruct, turn_template = load_character_memoized(instruction_template, '', '', instruct=True)
generate_params.update({ generate_params.update({
@ -72,7 +75,7 @@ def build_parameters(body, chat=False):
'greeting': greeting, 'greeting': greeting,
'name1_instruct': name1_instruct, 'name1_instruct': name1_instruct,
'name2_instruct': name2_instruct, 'name2_instruct': name2_instruct,
'context_instruct': context_instruct, 'context_instruct': body.get('context_instruct', context_instruct),
'turn_template': turn_template, 'turn_template': turn_template,
'chat-instruct_command': str(body.get('chat-instruct_command', shared.settings['chat-instruct_command'])), 'chat-instruct_command': str(body.get('chat-instruct_command', shared.settings['chat-instruct_command'])),
'history': body.get('history', {'internal': [], 'visible': []}) 'history': body.get('history', {'internal': [], 'visible': []})