torchserve

package
v0.11.0-alpha Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 1, 2023 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_inference_proto protoreflect.FileDescriptor
View Source
var File_management_proto protoreflect.FileDescriptor
View Source
var InferenceAPIsService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "org.pytorch.serve.grpc.inference.InferenceAPIsService",
	HandlerType: (*InferenceAPIsServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Ping",
			Handler:    _InferenceAPIsService_Ping_Handler,
		},
		{
			MethodName: "Predictions",
			Handler:    _InferenceAPIsService_Predictions_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "inference.proto",
}

InferenceAPIsService_ServiceDesc is the grpc.ServiceDesc for InferenceAPIsService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var ManagementAPIsService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "org.pytorch.serve.grpc.management.ManagementAPIsService",
	HandlerType: (*ManagementAPIsServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "DescribeModel",
			Handler:    _ManagementAPIsService_DescribeModel_Handler,
		},
		{
			MethodName: "ListModels",
			Handler:    _ManagementAPIsService_ListModels_Handler,
		},
		{
			MethodName: "RegisterModel",
			Handler:    _ManagementAPIsService_RegisterModel_Handler,
		},
		{
			MethodName: "ScaleWorker",
			Handler:    _ManagementAPIsService_ScaleWorker_Handler,
		},
		{
			MethodName: "SetDefault",
			Handler:    _ManagementAPIsService_SetDefault_Handler,
		},
		{
			MethodName: "UnregisterModel",
			Handler:    _ManagementAPIsService_UnregisterModel_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "management.proto",
}

ManagementAPIsService_ServiceDesc is the grpc.ServiceDesc for ManagementAPIsService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

Functions

func RegisterInferenceAPIsServiceServer

func RegisterInferenceAPIsServiceServer(s grpc.ServiceRegistrar, srv InferenceAPIsServiceServer)

func RegisterManagementAPIsServiceServer

func RegisterManagementAPIsServiceServer(s grpc.ServiceRegistrar, srv ManagementAPIsServiceServer)

Types

type DescribeModelRequest

type DescribeModelRequest struct {

	// Name of model to describe.
	ModelName string `protobuf:"bytes,1,opt,name=model_name,json=modelName,proto3" json:"model_name,omitempty"` //required
	// Version of model to describe.
	ModelVersion string `protobuf:"bytes,2,opt,name=model_version,json=modelVersion,proto3" json:"model_version,omitempty"` //optional
	// Customized metadata
	Customized bool `protobuf:"varint,3,opt,name=customized,proto3" json:"customized,omitempty"` //optional
	// contains filtered or unexported fields
}

func (*DescribeModelRequest) Descriptor deprecated

func (*DescribeModelRequest) Descriptor() ([]byte, []int)

Deprecated: Use DescribeModelRequest.ProtoReflect.Descriptor instead.

func (*DescribeModelRequest) GetCustomized

func (x *DescribeModelRequest) GetCustomized() bool

func (*DescribeModelRequest) GetModelName

func (x *DescribeModelRequest) GetModelName() string

func (*DescribeModelRequest) GetModelVersion

func (x *DescribeModelRequest) GetModelVersion() string

func (*DescribeModelRequest) ProtoMessage

func (*DescribeModelRequest) ProtoMessage()

func (*DescribeModelRequest) ProtoReflect

func (x *DescribeModelRequest) ProtoReflect() protoreflect.Message

func (*DescribeModelRequest) Reset

func (x *DescribeModelRequest) Reset()

func (*DescribeModelRequest) String

func (x *DescribeModelRequest) String() string

type InferenceAPIsServiceClient

type InferenceAPIsServiceClient interface {
	Ping(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*TorchServeHealthResponse, error)
	// Predictions entry point to get inference using default model version.
	Predictions(ctx context.Context, in *PredictionsRequest, opts ...grpc.CallOption) (*PredictionResponse, error)
}

InferenceAPIsServiceClient is the client API for InferenceAPIsService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

type InferenceAPIsServiceServer

type InferenceAPIsServiceServer interface {
	Ping(context.Context, *emptypb.Empty) (*TorchServeHealthResponse, error)
	// Predictions entry point to get inference using default model version.
	Predictions(context.Context, *PredictionsRequest) (*PredictionResponse, error)
	// contains filtered or unexported methods
}

InferenceAPIsServiceServer is the server API for InferenceAPIsService service. All implementations must embed UnimplementedInferenceAPIsServiceServer for forward compatibility

type ListModelsRequest

type ListModelsRequest struct {

	// Use this parameter to specify the maximum number of items to return. When this value is present, TorchServe does not return more than the specified number of items, but it might return fewer. This value is optional. If you include a value, it must be between 1 and 1000, inclusive. If you do not include a value, it defaults to 100.
	Limit int32 `protobuf:"varint,1,opt,name=limit,proto3" json:"limit,omitempty"` //optional
	// The token to retrieve the next set of results. TorchServe provides the token when the response from a previous call has more results than the maximum page size.
	NextPageToken int32 `protobuf:"varint,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` //optional
	// contains filtered or unexported fields
}

func (*ListModelsRequest) Descriptor deprecated

func (*ListModelsRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListModelsRequest.ProtoReflect.Descriptor instead.

func (*ListModelsRequest) GetLimit

func (x *ListModelsRequest) GetLimit() int32

func (*ListModelsRequest) GetNextPageToken

func (x *ListModelsRequest) GetNextPageToken() int32

func (*ListModelsRequest) ProtoMessage

func (*ListModelsRequest) ProtoMessage()

func (*ListModelsRequest) ProtoReflect

func (x *ListModelsRequest) ProtoReflect() protoreflect.Message

func (*ListModelsRequest) Reset

func (x *ListModelsRequest) Reset()

func (*ListModelsRequest) String

func (x *ListModelsRequest) String() string

type ManagementAPIsServiceClient

type ManagementAPIsServiceClient interface {
	// Provides detailed information about the default version of a model.
	DescribeModel(ctx context.Context, in *DescribeModelRequest, opts ...grpc.CallOption) (*ManagementResponse, error)
	// List registered models in TorchServe.
	ListModels(ctx context.Context, in *ListModelsRequest, opts ...grpc.CallOption) (*ManagementResponse, error)
	// Register a new model in TorchServe.
	RegisterModel(ctx context.Context, in *RegisterModelRequest, opts ...grpc.CallOption) (*ManagementResponse, error)
	// Configure number of workers for a default version of a model.This is a asynchronous call by default. Caller need to call describeModel to check if the model workers has been changed.
	ScaleWorker(ctx context.Context, in *ScaleWorkerRequest, opts ...grpc.CallOption) (*ManagementResponse, error)
	// Set default version of a model
	SetDefault(ctx context.Context, in *SetDefaultRequest, opts ...grpc.CallOption) (*ManagementResponse, error)
	// Unregister the default version of a model from TorchServe if it is the only version available.This is a asynchronous call by default. Caller can call listModels to confirm model is unregistered
	UnregisterModel(ctx context.Context, in *UnregisterModelRequest, opts ...grpc.CallOption) (*ManagementResponse, error)
}

ManagementAPIsServiceClient is the client API for ManagementAPIsService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

type ManagementAPIsServiceServer

type ManagementAPIsServiceServer interface {
	// Provides detailed information about the default version of a model.
	DescribeModel(context.Context, *DescribeModelRequest) (*ManagementResponse, error)
	// List registered models in TorchServe.
	ListModels(context.Context, *ListModelsRequest) (*ManagementResponse, error)
	// Register a new model in TorchServe.
	RegisterModel(context.Context, *RegisterModelRequest) (*ManagementResponse, error)
	// Configure number of workers for a default version of a model.This is a asynchronous call by default. Caller need to call describeModel to check if the model workers has been changed.
	ScaleWorker(context.Context, *ScaleWorkerRequest) (*ManagementResponse, error)
	// Set default version of a model
	SetDefault(context.Context, *SetDefaultRequest) (*ManagementResponse, error)
	// Unregister the default version of a model from TorchServe if it is the only version available.This is a asynchronous call by default. Caller can call listModels to confirm model is unregistered
	UnregisterModel(context.Context, *UnregisterModelRequest) (*ManagementResponse, error)
	// contains filtered or unexported methods
}

ManagementAPIsServiceServer is the server API for ManagementAPIsService service. All implementations must embed UnimplementedManagementAPIsServiceServer for forward compatibility

type ManagementResponse

type ManagementResponse struct {

	// Response string of different management API calls.
	Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`
	// contains filtered or unexported fields
}

func (*ManagementResponse) Descriptor deprecated

func (*ManagementResponse) Descriptor() ([]byte, []int)

Deprecated: Use ManagementResponse.ProtoReflect.Descriptor instead.

func (*ManagementResponse) GetMsg

func (x *ManagementResponse) GetMsg() string

func (*ManagementResponse) ProtoMessage

func (*ManagementResponse) ProtoMessage()

func (*ManagementResponse) ProtoReflect

func (x *ManagementResponse) ProtoReflect() protoreflect.Message

func (*ManagementResponse) Reset

func (x *ManagementResponse) Reset()

func (*ManagementResponse) String

func (x *ManagementResponse) String() string

type PredictionResponse

type PredictionResponse struct {

	// TorchServe health
	Prediction []byte `protobuf:"bytes,1,opt,name=prediction,proto3" json:"prediction,omitempty"`
	// contains filtered or unexported fields
}

func (*PredictionResponse) Descriptor deprecated

func (*PredictionResponse) Descriptor() ([]byte, []int)

Deprecated: Use PredictionResponse.ProtoReflect.Descriptor instead.

func (*PredictionResponse) GetPrediction

func (x *PredictionResponse) GetPrediction() []byte

func (*PredictionResponse) ProtoMessage

func (*PredictionResponse) ProtoMessage()

func (*PredictionResponse) ProtoReflect

func (x *PredictionResponse) ProtoReflect() protoreflect.Message

func (*PredictionResponse) Reset

func (x *PredictionResponse) Reset()

func (*PredictionResponse) String

func (x *PredictionResponse) String() string

type PredictionsRequest

type PredictionsRequest struct {

	// Name of model.
	ModelName string `protobuf:"bytes,1,opt,name=model_name,json=modelName,proto3" json:"model_name,omitempty"` //required
	// Version of model to run prediction on.
	ModelVersion string `protobuf:"bytes,2,opt,name=model_version,json=modelVersion,proto3" json:"model_version,omitempty"` //optional
	// input data for model prediction
	Input map[string][]byte `` //required
	/* 151-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*PredictionsRequest) Descriptor deprecated

func (*PredictionsRequest) Descriptor() ([]byte, []int)

Deprecated: Use PredictionsRequest.ProtoReflect.Descriptor instead.

func (*PredictionsRequest) GetInput

func (x *PredictionsRequest) GetInput() map[string][]byte

func (*PredictionsRequest) GetModelName

func (x *PredictionsRequest) GetModelName() string

func (*PredictionsRequest) GetModelVersion

func (x *PredictionsRequest) GetModelVersion() string

func (*PredictionsRequest) ProtoMessage

func (*PredictionsRequest) ProtoMessage()

func (*PredictionsRequest) ProtoReflect

func (x *PredictionsRequest) ProtoReflect() protoreflect.Message

func (*PredictionsRequest) Reset

func (x *PredictionsRequest) Reset()

func (*PredictionsRequest) String

func (x *PredictionsRequest) String() string

type RegisterModelRequest

type RegisterModelRequest struct {

	// Inference batch size, default: 1.
	BatchSize int32 `protobuf:"varint,1,opt,name=batch_size,json=batchSize,proto3" json:"batch_size,omitempty"` //optional
	// Inference handler entry-point. This value will override handler in MANIFEST.json if present.
	Handler string `protobuf:"bytes,2,opt,name=handler,proto3" json:"handler,omitempty"` //optional
	// Number of initial workers, default: 0.
	InitialWorkers int32 `protobuf:"varint,3,opt,name=initial_workers,json=initialWorkers,proto3" json:"initial_workers,omitempty"` //optional
	// Maximum delay for batch aggregation, default: 100.
	MaxBatchDelay int32 `protobuf:"varint,4,opt,name=max_batch_delay,json=maxBatchDelay,proto3" json:"max_batch_delay,omitempty"` //optional
	// Name of model. This value will override modelName in MANIFEST.json if present.
	ModelName string `protobuf:"bytes,5,opt,name=model_name,json=modelName,proto3" json:"model_name,omitempty"` //optional
	// Maximum time, in seconds, the TorchServe waits for a response from the model inference code, default: 120.
	ResponseTimeout int32 `protobuf:"varint,6,opt,name=response_timeout,json=responseTimeout,proto3" json:"response_timeout,omitempty"` //optional
	// Runtime for the model custom service code. This value will override runtime in MANIFEST.json if present.
	Runtime string `protobuf:"bytes,7,opt,name=runtime,proto3" json:"runtime,omitempty"` //optional
	// Decides whether creation of worker synchronous or not, default: false.
	Synchronous bool `protobuf:"varint,8,opt,name=synchronous,proto3" json:"synchronous,omitempty"` //optional
	// Model archive download url, support local file or HTTP(s) protocol.
	Url string `protobuf:"bytes,9,opt,name=url,proto3" json:"url,omitempty"` //required
	// Decides whether S3 SSE KMS enabled or not, default: false.
	S3SseKms bool `protobuf:"varint,10,opt,name=s3_sse_kms,json=s3SseKms,proto3" json:"s3_sse_kms,omitempty"` //optional
	// contains filtered or unexported fields
}

func (*RegisterModelRequest) Descriptor deprecated

func (*RegisterModelRequest) Descriptor() ([]byte, []int)

Deprecated: Use RegisterModelRequest.ProtoReflect.Descriptor instead.

func (*RegisterModelRequest) GetBatchSize

func (x *RegisterModelRequest) GetBatchSize() int32

func (*RegisterModelRequest) GetHandler

func (x *RegisterModelRequest) GetHandler() string

func (*RegisterModelRequest) GetInitialWorkers

func (x *RegisterModelRequest) GetInitialWorkers() int32

func (*RegisterModelRequest) GetMaxBatchDelay

func (x *RegisterModelRequest) GetMaxBatchDelay() int32

func (*RegisterModelRequest) GetModelName

func (x *RegisterModelRequest) GetModelName() string

func (*RegisterModelRequest) GetResponseTimeout

func (x *RegisterModelRequest) GetResponseTimeout() int32

func (*RegisterModelRequest) GetRuntime

func (x *RegisterModelRequest) GetRuntime() string

func (*RegisterModelRequest) GetS3SseKms

func (x *RegisterModelRequest) GetS3SseKms() bool

func (*RegisterModelRequest) GetSynchronous

func (x *RegisterModelRequest) GetSynchronous() bool

func (*RegisterModelRequest) GetUrl

func (x *RegisterModelRequest) GetUrl() string

func (*RegisterModelRequest) ProtoMessage

func (*RegisterModelRequest) ProtoMessage()

func (*RegisterModelRequest) ProtoReflect

func (x *RegisterModelRequest) ProtoReflect() protoreflect.Message

func (*RegisterModelRequest) Reset

func (x *RegisterModelRequest) Reset()

func (*RegisterModelRequest) String

func (x *RegisterModelRequest) String() string

type ScaleWorkerRequest

type ScaleWorkerRequest struct {

	// Name of model to scale workers.
	ModelName string `protobuf:"bytes,1,opt,name=model_name,json=modelName,proto3" json:"model_name,omitempty"` //required
	// Model version.
	ModelVersion string `protobuf:"bytes,2,opt,name=model_version,json=modelVersion,proto3" json:"model_version,omitempty"` //optional
	// Maximum number of worker processes.
	MaxWorker int32 `protobuf:"varint,3,opt,name=max_worker,json=maxWorker,proto3" json:"max_worker,omitempty"` //optional
	// Minimum number of worker processes.
	MinWorker int32 `protobuf:"varint,4,opt,name=min_worker,json=minWorker,proto3" json:"min_worker,omitempty"` //optional
	// Number of GPU worker processes to create.
	NumberGpu int32 `protobuf:"varint,5,opt,name=number_gpu,json=numberGpu,proto3" json:"number_gpu,omitempty"` //optional
	// Decides whether the call is synchronous or not, default: false.
	Synchronous bool `protobuf:"varint,6,opt,name=synchronous,proto3" json:"synchronous,omitempty"` //optional
	// Waiting up to the specified wait time if necessary for a worker to complete all pending requests. Use 0 to terminate backend worker process immediately. Use -1 for wait infinitely.
	Timeout int32 `protobuf:"varint,7,opt,name=timeout,proto3" json:"timeout,omitempty"` //optional
	// contains filtered or unexported fields
}

func (*ScaleWorkerRequest) Descriptor deprecated

func (*ScaleWorkerRequest) Descriptor() ([]byte, []int)

Deprecated: Use ScaleWorkerRequest.ProtoReflect.Descriptor instead.

func (*ScaleWorkerRequest) GetMaxWorker

func (x *ScaleWorkerRequest) GetMaxWorker() int32

func (*ScaleWorkerRequest) GetMinWorker

func (x *ScaleWorkerRequest) GetMinWorker() int32

func (*ScaleWorkerRequest) GetModelName

func (x *ScaleWorkerRequest) GetModelName() string

func (*ScaleWorkerRequest) GetModelVersion

func (x *ScaleWorkerRequest) GetModelVersion() string

func (*ScaleWorkerRequest) GetNumberGpu

func (x *ScaleWorkerRequest) GetNumberGpu() int32

func (*ScaleWorkerRequest) GetSynchronous

func (x *ScaleWorkerRequest) GetSynchronous() bool

func (*ScaleWorkerRequest) GetTimeout

func (x *ScaleWorkerRequest) GetTimeout() int32

func (*ScaleWorkerRequest) ProtoMessage

func (*ScaleWorkerRequest) ProtoMessage()

func (*ScaleWorkerRequest) ProtoReflect

func (x *ScaleWorkerRequest) ProtoReflect() protoreflect.Message

func (*ScaleWorkerRequest) Reset

func (x *ScaleWorkerRequest) Reset()

func (*ScaleWorkerRequest) String

func (x *ScaleWorkerRequest) String() string

type SetDefaultRequest

type SetDefaultRequest struct {

	// Name of model whose default version needs to be updated.
	ModelName string `protobuf:"bytes,1,opt,name=model_name,json=modelName,proto3" json:"model_name,omitempty"` //required
	// Version of model to be set as default version for the model
	ModelVersion string `protobuf:"bytes,2,opt,name=model_version,json=modelVersion,proto3" json:"model_version,omitempty"` //required
	// contains filtered or unexported fields
}

func (*SetDefaultRequest) Descriptor deprecated

func (*SetDefaultRequest) Descriptor() ([]byte, []int)

Deprecated: Use SetDefaultRequest.ProtoReflect.Descriptor instead.

func (*SetDefaultRequest) GetModelName

func (x *SetDefaultRequest) GetModelName() string

func (*SetDefaultRequest) GetModelVersion

func (x *SetDefaultRequest) GetModelVersion() string

func (*SetDefaultRequest) ProtoMessage

func (*SetDefaultRequest) ProtoMessage()

func (*SetDefaultRequest) ProtoReflect

func (x *SetDefaultRequest) ProtoReflect() protoreflect.Message

func (*SetDefaultRequest) Reset

func (x *SetDefaultRequest) Reset()

func (*SetDefaultRequest) String

func (x *SetDefaultRequest) String() string

type TorchServeHealthResponse

type TorchServeHealthResponse struct {

	// TorchServe health
	Health string `protobuf:"bytes,1,opt,name=health,proto3" json:"health,omitempty"`
	// contains filtered or unexported fields
}

func (*TorchServeHealthResponse) Descriptor deprecated

func (*TorchServeHealthResponse) Descriptor() ([]byte, []int)

Deprecated: Use TorchServeHealthResponse.ProtoReflect.Descriptor instead.

func (*TorchServeHealthResponse) GetHealth

func (x *TorchServeHealthResponse) GetHealth() string

func (*TorchServeHealthResponse) ProtoMessage

func (*TorchServeHealthResponse) ProtoMessage()

func (*TorchServeHealthResponse) ProtoReflect

func (x *TorchServeHealthResponse) ProtoReflect() protoreflect.Message

func (*TorchServeHealthResponse) Reset

func (x *TorchServeHealthResponse) Reset()

func (*TorchServeHealthResponse) String

func (x *TorchServeHealthResponse) String() string

type UnimplementedInferenceAPIsServiceServer

type UnimplementedInferenceAPIsServiceServer struct {
}

UnimplementedInferenceAPIsServiceServer must be embedded to have forward compatible implementations.

func (UnimplementedInferenceAPIsServiceServer) Ping

func (UnimplementedInferenceAPIsServiceServer) Predictions

type UnimplementedManagementAPIsServiceServer

type UnimplementedManagementAPIsServiceServer struct {
}

UnimplementedManagementAPIsServiceServer must be embedded to have forward compatible implementations.

func (UnimplementedManagementAPIsServiceServer) DescribeModel

func (UnimplementedManagementAPIsServiceServer) ListModels

func (UnimplementedManagementAPIsServiceServer) RegisterModel

func (UnimplementedManagementAPIsServiceServer) ScaleWorker

func (UnimplementedManagementAPIsServiceServer) SetDefault

func (UnimplementedManagementAPIsServiceServer) UnregisterModel

type UnregisterModelRequest

type UnregisterModelRequest struct {

	// Name of model to unregister.
	ModelName string `protobuf:"bytes,1,opt,name=model_name,json=modelName,proto3" json:"model_name,omitempty"` //required
	// Name of model to unregister.
	ModelVersion string `protobuf:"bytes,2,opt,name=model_version,json=modelVersion,proto3" json:"model_version,omitempty"` //optional
	// contains filtered or unexported fields
}

func (*UnregisterModelRequest) Descriptor deprecated

func (*UnregisterModelRequest) Descriptor() ([]byte, []int)

Deprecated: Use UnregisterModelRequest.ProtoReflect.Descriptor instead.

func (*UnregisterModelRequest) GetModelName

func (x *UnregisterModelRequest) GetModelName() string

func (*UnregisterModelRequest) GetModelVersion

func (x *UnregisterModelRequest) GetModelVersion() string

func (*UnregisterModelRequest) ProtoMessage

func (*UnregisterModelRequest) ProtoMessage()

func (*UnregisterModelRequest) ProtoReflect

func (x *UnregisterModelRequest) ProtoReflect() protoreflect.Message

func (*UnregisterModelRequest) Reset

func (x *UnregisterModelRequest) Reset()

func (*UnregisterModelRequest) String

func (x *UnregisterModelRequest) String() string

type UnsafeInferenceAPIsServiceServer

type UnsafeInferenceAPIsServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeInferenceAPIsServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to InferenceAPIsServiceServer will result in compilation errors.

type UnsafeManagementAPIsServiceServer

type UnsafeManagementAPIsServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeManagementAPIsServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to ManagementAPIsServiceServer will result in compilation errors.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL