Quake3World.com Forums
     General Discussion
        Prompt Engineer's


Post new topicReply to topic
Login | Profile | | FAQ | Search | IRC




Previous topic | Next topic 
Topic Starter Topic: Prompt Engineer's

Lead Pipe Mafia
Lead Pipe Mafia
Joined: 15 Oct 2007
Posts: 5951
PostPosted: 05-01-2023 04:18 AM           Profile   Send private message  E-mail  Edit post Reply with quote


I'm seriously thinking about doing a pivot in my career and focusing solely on AI and machine learning. I have an LLM setup at home that I play with, you can download it too at https://sourceforge.net/projects/alpaca-cpp.mirror/ and it's really interesting to see what you can do with this. Beyond that, I'm seeing postings like this one https://jobs.lever.co/Anthropic/e3cde481-d446-460f-b576-93cab67bd1ed

I'm getting bored of system administration but on the plus side I have broad enough knowledge in various fields that without being an expert on a specific subject I'm still capable of producing expert level results in a variety of different fields. Anyone else looking at the AI field for future careers?




Top
                 

The Afflicted
The Afflicted
Joined: 21 Apr 2005
Posts: 563
PostPosted: 05-01-2023 03:33 PM           Profile Send private message  E-mail  Edit post Reply with quote


gggggg




Last edited by Ganemi on 09-30-2023 08:50 AM, edited 1 time in total.

Top
                 

The Afflicted
The Afflicted
Joined: 21 Apr 2005
Posts: 563
PostPosted: 05-02-2023 08:06 PM           Profile Send private message  E-mail  Edit post Reply with quote


Get into arduinos and 3D printing:

https://www.youtube.com/watch?v=w3q_4_-ZHJ4

When I have time I want to make one of these to play with cats all day.




Top
                 

Arrr?
Arrr?
Joined: 09 Feb 2001
Posts: 35461
PostPosted: 05-03-2023 07:05 PM           Profile Send private message  E-mail  Edit post Reply with quote


Prompt engineer's what?




Top
                 

Messatsu Ko Jy-ouu
Messatsu Ko Jy-ouu
Joined: 24 Nov 2000
Posts: 44139
PostPosted: 05-03-2023 11:14 PM           Profile   Send private message  E-mail  Edit post Reply with quote


Transient wrote:
Prompt engineer's what?

4 days until the intrusive thoughts took over :olo:




Top
                 

Arrr?
Arrr?
Joined: 09 Feb 2001
Posts: 35461
PostPosted: 05-03-2023 11:19 PM           Profile Send private message  E-mail  Edit post Reply with quote


I just need to know!




Top
                 

Lead Pipe Mafia
Lead Pipe Mafia
Joined: 15 Oct 2007
Posts: 5951
PostPosted: 05-04-2023 05:38 AM           Profile   Send private message  E-mail  Edit post Reply with quote


Check the links in my post Transient.

I was actually playing around with some AI and generated a short clip that's nothing short of amazing. I think I'm gonna do an entire music video using this tech in the near future.




Top
                 

Arrr?
Arrr?
Joined: 09 Feb 2001
Posts: 35461
PostPosted: 05-04-2023 07:08 AM           Profile Send private message  E-mail  Edit post Reply with quote


Yes, but prompt engineer is what? :offended:




Top
                 

Cool #9
Cool #9
Joined: 01 Dec 2000
Posts: 44139
PostPosted: 05-04-2023 07:55 AM           Profile   Send private message  E-mail  Edit post Reply with quote


It's nothing more than someone typing in commands for some AI to interpret.
Considering the state of ChatGPT and the various image creation AI's I think calling it a "prompt engineer" is hugely overselling it.




Top
                 

Lead Pipe Mafia
Lead Pipe Mafia
Joined: 15 Oct 2007
Posts: 5951
PostPosted: 05-04-2023 08:07 AM           Profile   Send private message  E-mail  Edit post Reply with quote


I completely agree yet that's the job title. There is however some nuance to the ability to generate code, instructions or content using prompts though.

Like it's easy to think, hey I can make a powershell script using AI but if you don't know powershell you're going to have a tough time. You sort of need the technical knowledge yourself to get AI to do what you need it to. Otherwise you might wind up with an unsuable piece of code because of a few missing bits of instruction.




Top
                 

Arrr?
Arrr?
Joined: 09 Feb 2001
Posts: 35461
PostPosted: 05-05-2023 12:11 AM           Profile Send private message  E-mail  Edit post Reply with quote


I give up. :miffed:




Top
                 

Etile
Etile
Joined: 19 Nov 2003
Posts: 34899
PostPosted: 05-05-2023 12:13 AM           Profile Send private message  E-mail  Edit post Reply with quote


Ganemi wrote:
I'm basically retarded


well thank zeus for that




Top
                 

Lead Pipe Mafia
Lead Pipe Mafia
Joined: 15 Oct 2007
Posts: 5951
PostPosted: 05-05-2023 04:08 AM           Profile   Send private message  E-mail  Edit post Reply with quote


Transient wrote:
I give up. :miffed:


It's all in the link with the job posting. You're asking what's a prompt engineer and the job details are in that link. It's basically someone who has enough expertise in a particular subject to be able to tell an AI to create something specific. The AI does the work but you need to know how to ask it to do it.

For example, say you wanted to create a chat app using javascript.

You could tell chatGPT "Write me a chat app using javascript" and it's going to proceed to spit out a lot of code but in the end, unless you're somewhat familiar with javascript you're going to be missing some things.

A prompt engineer is going to be able to see that certain things are missing. My prompt, for example would be more something akin to "Write me a chat app in javascript that requires a client app to receive messages, ensure each client app has a unique userid. Also create a server app to process the requests and a graphical user interface in C# for both apps that has an open field for typing in messages, a send button and a cancel button that do their respective functions"

I'd then load up something like openAI to create the graphical buttons and UI to be used by the C# app and tie everything together.


They're both the same thing but one requires a little bit of knowledge about how it all works. The thing is that this is one scenario, you could have a similar prompt engineer write music instead of applications and they could be more specialized in their musical knowledge.




Top
                 

Arrr?
Arrr?
Joined: 09 Feb 2001
Posts: 35461
PostPosted: 05-05-2023 12:34 PM           Profile Send private message  E-mail  Edit post Reply with quote


No, I was poking fun at you for using the possessive form of the word Engineer instead of the plural form when you typed in the title for this thread.

Engineers = plural
Engineer's = possessive

Protip: Take out the apostrophe and s and replace it with the word "is". Does your sentence still make sense? :idea:

Image




Last edited by Transient on 05-06-2023 01:17 PM, edited 1 time in total.

Top
                 

Cool #9
Cool #9
Joined: 01 Dec 2000
Posts: 44139
PostPosted: 05-06-2023 10:07 AM           Profile   Send private message  E-mail  Edit post Reply with quote


Engineeriss

No that doesn't make any sense at all.




Top
                 

Arrr?
Arrr?
Joined: 09 Feb 2001
Posts: 35461
PostPosted: 05-06-2023 01:17 PM           Profile Send private message  E-mail  Edit post Reply with quote


Pedant game recognizes game. :up:




Top
                 

Messatsu Ko Jy-ouu
Messatsu Ko Jy-ouu
Joined: 24 Nov 2000
Posts: 44139
PostPosted: 05-07-2023 04:44 AM           Profile   Send private message  E-mail  Edit post Reply with quote


lol




Top
                 

Legend
Legend
Joined: 04 Jan 2006
Posts: 16499
PostPosted: 05-07-2023 06:06 AM           Profile Send private message  E-mail  Edit post Reply with quote


fucking nerdseses




Top
                 

Etile
Etile
Joined: 19 Nov 2003
Posts: 34899
PostPosted: 05-08-2023 12:23 AM           Profile Send private message  E-mail  Edit post Reply with quote


fucking Bagginses




Top
                 

Lead Pipe Mafia
Lead Pipe Mafia
Joined: 15 Oct 2007
Posts: 5951
PostPosted: 05-09-2023 08:31 AM           Profile   Send private message  E-mail  Edit post Reply with quote


Transient wrote:
No, I was poking fun at you for using the possessive form of the word Engineer instead of the plural form when you typed in the title for this thread.

Engineers = plural
Engineer's = possessive

Protip: Take out the apostrophe and s and replace it with the word "is". Does your sentence still make sense? :idea:

Image


You know, as someone who's primary language isn't english I've always struggled with that one. Maybe I'll get it some day.




Top
                 

Who's that man, Mommy?
Who's that man, Mommy?
Joined: 27 Aug 2003
Posts: 5316
PostPosted: 05-17-2023 03:39 AM           Profile Send private message  E-mail  Edit post Reply with quote


Eraser wrote:
I think calling it a "prompt engineer" is hugely overselling it.


I'm not sure on this one yet.

I think it's easy to brush off these LLMs when you think about them in terms of "write one prompt to get a task done".

But take this perspective:

If you could compose a network/pipeline of 1000 interconnected prompts to get a 'program' that automates web development, would it be worth it? (Yes of course).

And so the real task is not: "Write me a prompt to do X" but rather to understand how complex tasks can be achieved by using AI tools in multiple steps. And this would involve proper engineering. For example LLMs are very good when used in combination with DSLs (domain specific languages). And knowing how to find the right DSL for the respective business contexts is a skill requirement that is something genuinely new.

Here's an example (4:57 or something):




Top
                 

Lead Pipe Mafia
Lead Pipe Mafia
Joined: 15 Oct 2007
Posts: 5951
PostPosted: 05-17-2023 09:07 AM           Profile   Send private message  E-mail  Edit post Reply with quote


This is precisely the problem people who don't know don't realize.

This morning I had it make me a powershell script so I can extract where a certain user has permissions in our share drive. It came up with this.

import os
import csv
from googleapiclient.discovery import build
from google.oauth2 import service_account

# Set the necessary credentials
credentials = service_account.Credentials.from_service_account_file('path/to/credentials.json')
SCOPES = ['https://www.googleapis.com/auth/drive']

# Enter the email address of the user you want to check
user_email = 'user@example.com'

# Enter the shared drive ID
shared_drive_id = 'your_shared_drive_id'

# Connect to the Google Drive API
service = build('drive', 'v3', credentials=credentials)

# Get the list of permissions for the user in the shared drive
results = service.permissions().list(
fileId=shared_drive_id,
supportsAllDrives=True,
fields="permissions(id, role, emailAddress)").execute()

# Create a list to store the locations the user has access to
locations = []

# Iterate through the permissions and filter for the user's email address
for permission in results.get('permissions', []):
if permission.get('emailAddress') == user_email:
locations.append(permission.get('id'))

# Export the locations to a text file
output_file = 'user_locations.txt'
with open(output_file, 'w') as file:
file.write('\


If you don't know, that's not the entire code, I cut it off mid project because I could already tell this isn't what I wanted. It was inserting google api's into the code for some unknown reason and doing it python. I wasn't asking it to do this. so I asked it to remove it and it gave me this. Also, I specified in powershell as i'd forgotten to do so in my first prompt.



# Set the necessary variables
$UserEmail = "user@example.com"
$SharedDriveId = "your_shared_drive_id"
$OutputFile = "user_locations.txt"

# Authenticate with Google Drive API
$CredPath = "path/to/credentials.json"
$Scopes = "https://www.googleapis.com/auth/drive"
$Credential = Get-GoogleOAuthCredential -Path $CredPath -Scope $Scopes
Connect-GoogleDrive -Credential $Credential

# Get the list of permissions for the user in the shared drive
$Permissions = Get-GoogleDrivePermission -Id $SharedDriveId

# Create a list to store the locations the user has access to
$Locations = @()

# Iterate through the permissions and filter for the user's email address
foreach ($Permission in $Permissions) {
if ($Permission.EmailAddress -eq $UserEmail) {
$Locations += $Permission.Id
}
}

# Export the locations to a text file
$Locations | Out-File -FilePath $OutputFile

Write-Host "User locations exported to $OutputFile"


Which again, is not what I wanted as it's importing, still different google API's I'm not interested in for a local share drive.

Eventually I got it to generate something that looked correct but there were syntax errors in the script which I had it correct and finally it came out with this.

$DriveLetter = "C:" # Specify the drive letter you want to check
$User = "DOMAIN\username" # Replace with the user you want to map permissions for
$OutputFilePath = "C:\Path\To\Output\File.txt" # Specify the desired output file path

# Recursive function to get permissions for the specified user
function Get-UserPermissions {
param(
[string]$Path
)

# Get the ACL for the current path
$DriveACL = Get-Acl -Path $Path

# Filter the ACL entries for the specified user
$UserPermissions = $DriveACL.Access | Where-Object { $_.IdentityReference.Value -eq $User }

# Output the permissions for the current path
$UserPermissions | Select-Object @{Name="Path";Expression={$Path}}, IdentityReference, FileSystemRights, AccessControlType

# Recursively process subfolders
$Subfolders = Get-ChildItem -Directory -Path $Path
foreach ($Subfolder in $Subfolders) {
Get-UserPermissions -Path $Subfolder.FullName
}
}

# Invoke the function to retrieve permissions for the specified user
Get-UserPermissions -Path $DriveLetter | Out-File -FilePath "${OutputFilePath}"

Write-Host "Permissions information exported to $OutputFilePath"


Which is currently running on my device through millions of files to extract exactly what I want, I think... I'll see when I get the result but I'm pretty confident it's going to give me what I want.

All that to say that unless you know what you need, it'll give you garbage.




Top
                 

Arrr?
Arrr?
Joined: 09 Feb 2001
Posts: 35461
PostPosted: 05-17-2023 12:04 PM           Profile Send private message  E-mail  Edit post Reply with quote


Code:
[size=150]import os
import csv
from googleapiclient.discovery import build
from google.oauth2 import service_account

# Set the necessary credentials
credentials = service_account.Credentials.from_service_account_file('path/to/credentials.json')
SCOPES = ['https://www.googleapis.com/auth/drive']

# Enter the email address of the user you want to check
user_email = 'user@example.com'

# Enter the shared drive ID
shared_drive_id = 'your_shared_drive_id'

# Connect to the Google Drive API
service = build('drive', 'v3', credentials=credentials)

# Get the list of permissions for the user in the shared drive
results = service.permissions().list(
    fileId=shared_drive_id,
    supportsAllDrives=True,
    fields="permissions(id, role, emailAddress)").execute()

# Create a list to store the locations the user has access to
locations = []

# Iterate through the permissions and filter for the user's email address
for permission in results.get('permissions', []):
    if permission.get('emailAddress') == user_email:
        locations.append(permission.get('id'))

# Export the locations to a text file
output_file = 'user_locations.txt'
with open(output_file, 'w') as file:
    file.write('\[/size]


Code:
[size=150]# Set the necessary variables
$UserEmail = "user@example.com"
$SharedDriveId = "your_shared_drive_id"
$OutputFile = "user_locations.txt"

# Authenticate with Google Drive API
$CredPath = "path/to/credentials.json"
$Scopes = "https://www.googleapis.com/auth/drive"
$Credential = Get-GoogleOAuthCredential -Path $CredPath -Scope $Scopes
Connect-GoogleDrive -Credential $Credential

# Get the list of permissions for the user in the shared drive
$Permissions = Get-GoogleDrivePermission -Id $SharedDriveId

# Create a list to store the locations the user has access to
$Locations = @()

# Iterate through the permissions and filter for the user's email address
foreach ($Permission in $Permissions) {
    if ($Permission.EmailAddress -eq $UserEmail) {
        $Locations += $Permission.Id
    }
}

# Export the locations to a text file
$Locations | Out-File -FilePath $OutputFile

Write-Host "User locations exported to $OutputFile"
[/size]

Which again, is not what I wanted as it's importing, still different google API's I'm not interested in for a local share drive.

Eventually I got it to generate something that looked correct but there were syntax errors in the script which I had it correct and finally it came out with this.

[size=150]$DriveLetter = "C:"  # Specify the drive letter you want to check
$User = "DOMAIN\username"  # Replace with the user you want to map permissions for
$OutputFilePath = "C:\Path\To\Output\File.txt"  # Specify the desired output file path

# Recursive function to get permissions for the specified user
function Get-UserPermissions {
    param(
        [string]$Path
    )

    # Get the ACL for the current path
    $DriveACL = Get-Acl -Path $Path

    # Filter the ACL entries for the specified user
    $UserPermissions = $DriveACL.Access | Where-Object { $_.IdentityReference.Value -eq $User }

    # Output the permissions for the current path
    $UserPermissions | Select-Object @{Name="Path";Expression={$Path}}, IdentityReference, FileSystemRights, AccessControlType

    # Recursively process subfolders
    $Subfolders = Get-ChildItem -Directory -Path $Path
    foreach ($Subfolder in $Subfolders) {
        Get-UserPermissions -Path $Subfolder.FullName
    }
}

# Invoke the function to retrieve permissions for the specified user
Get-UserPermissions -Path $DriveLetter | Out-File -FilePath "${OutputFilePath}"

Write-Host "Permissions information exported to $OutputFilePath"[/size]


You can use [code] tags here. ;)




Top
                 

Lead Pipe Mafia
Lead Pipe Mafia
Joined: 15 Oct 2007
Posts: 5951
PostPosted: 05-18-2023 04:31 AM           Profile   Send private message  E-mail  Edit post Reply with quote


Well shit. Q3W really was ahead of its time!

Edit: Got the results of the script this morning and it's pretty much exactly what I wanted. I shoulda outputted to a delimited csv though...




Top
                 
Quake3World.com | Forum Index | General Discussion


Post new topic Reply to topic


cron
Quake3World.com
© ZeniMax. Zenimax, QUAKE III ARENA, Id Software and associated trademarks are trademarks of the ZeniMax group of companies. All rights reserved.
This is an unofficial fan website without any affiliation with or endorsement by ZeniMax.
All views and opinions expressed are those of the author.